Class: Lotus::Routes
- Inherits:
-
Object
- Object
- Lotus::Routes
- Defined in:
- lib/lotus/routes.rb
Overview
Routes factory
A Lotus application has this factory instantiated by default and associated to the ‘Routes` constant, under the application namespace.
Instance Method Summary collapse
-
#initialize(routes) ⇒ Lotus::Routes
constructor
Initialize the factory.
-
#path(name, *args) ⇒ Lotus::Utils::Escape::SafeString
Return a relative path for the given route name.
-
#url(name, *args) ⇒ Lotus::Utils::Escape::SafeString
Return an absolute path for the given route name.
Constructor Details
#initialize(routes) ⇒ Lotus::Routes
Initialize the factory
18 19 20 |
# File 'lib/lotus/routes.rb', line 18 def initialize(routes) @routes = routes end |
Dynamic Method Handling
This class handles dynamic methods through the method_missing method
#method_missing(m, *args) ⇒ Object (protected)
This method is part of a private API. You should avoid using this method if possible, as it may be removed or be changed in the future.
141 142 143 144 145 146 147 148 149 |
# File 'lib/lotus/routes.rb', line 141 def method_missing(m, *args) named_route, type = m.to_s.split(/\_(path|url)\z/) if type public_send(type, named_route.to_sym, *args) else super end end |
Instance Method Details
#path(name, *args) ⇒ Lotus::Utils::Escape::SafeString
Return a relative path for the given route name
73 74 75 |
# File 'lib/lotus/routes.rb', line 73 def path(name, *args) Utils::Escape::SafeString.new(@routes.path(name, *args)) end |
#url(name, *args) ⇒ Lotus::Utils::Escape::SafeString
Return an absolute path for the given route name
134 135 136 |
# File 'lib/lotus/routes.rb', line 134 def url(name, *args) Utils::Escape::SafeString.new(@routes.url(name, *args)) end |