method
with
v7.0.0 -
Show latest stable
-
0 notes -
Class: RoutesHelpers
- 1.0.0
- 1.1.6
- 1.2.6
- 2.0.3
- 2.1.0
- 2.2.1
- 2.3.8
- 3.0.0
- 3.0.9
- 3.1.0 (0)
- 3.2.1 (0)
- 3.2.8 (0)
- 3.2.13 (0)
- 4.0.2 (0)
- 4.1.8 (0)
- 4.2.1 (0)
- 4.2.7 (0)
- 4.2.9 (0)
- 5.0.0.1 (0)
- 5.1.7 (0)
- 5.2.3 (0)
- 6.0.0 (0)
- 6.1.3.1 (0)
- 6.1.7.7 (0)
- 7.0.0 (0)
- 7.1.3.2 (0)
- 7.1.3.4 (0)
- What's this?
with(routes, include_path_helpers = true)
public
Hide source
# File actionpack/lib/abstract_controller/railties/routes_helpers.rb, line 8 def self.with(routes, include_path_helpers = true) Module.new do define_method(:inherited) do |klass| super(klass) namespace = klass.module_parents.detect { |m| m.respond_to?(:railtie_routes_url_helpers) } actual_routes = namespace ? namespace.railtie_routes_url_helpers._routes : routes if namespace klass.include(namespace.railtie_routes_url_helpers(include_path_helpers)) else klass.include(routes.url_helpers(include_path_helpers)) end # In the case that we have ex. # class A::Foo < ApplicationController # class Bar < A::Foo # We will need to redefine _routes because it will not be correct # via inheritance. unless klass._routes.equal?(actual_routes) klass.redefine_singleton_method(:_routes) { actual_routes } klass.include(Module.new do define_method(:_routes) { @_routes || actual_routes } end) end end end