Guest User

Untitled

a guest
Feb 20th, 2018
65
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 0.59 KB | None | 0 0
  1. def slice_url(*args)
  2. params = args.last.is_a?(Hash) ? args.pop : {}
  3. slice_name, route_name = if args[0].is_a?(Symbol) && args[1].is_a?(Symbol)
  4. [args.shift, args.shift] # other slice identifier, route name
  5. elsif args[0].is_a?(Symbol)
  6. [slice.identifier_sym, args.shift] # self, route name
  7. else
  8. args.unshift(params)
  9. [slice.identifier_sym, :default] # self, default route
  10. end
  11.  
  12. unless route = Merb::Slices.named_routes[slice_name][route_name]
  13. raise Merb::Router::GenerationError, "Named route not found: #{route_name}"
  14. end
  15.  
  16. route.generate(args, params)
  17. end
Add Comment
Please, Sign In to add comment