Skip to content

Commit d08810e

Browse files
committed
extend with a module then use define_method
no need for redefine_method
1 parent 6457ed4 commit d08810e

File tree

1 file changed

+4
-7
lines changed
  • actionpack/lib/action_dispatch/routing

1 file changed

+4
-7
lines changed

actionpack/lib/action_dispatch/routing/mapper.rb

Lines changed: 4 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -578,18 +578,15 @@ def define_generate_prefix(app, name)
578578
_route = @set.named_routes.routes[name.to_sym]
579579
_routes = @set
580580
app.routes.define_mounted_helper(name)
581-
app.routes.singleton_class.class_eval do
582-
redefine_method :mounted? do
583-
true
584-
end
585-
586-
redefine_method :_generate_prefix do |options|
581+
app.routes.extend Module.new {
582+
def mounted?; true; end
583+
define_method :_generate_prefix do |options|
587584
prefix_options = options.slice(*_route.segment_keys)
588585
# we must actually delete prefix segment keys to avoid passing them to next url_for
589586
_route.segment_keys.each { |k| options.delete(k) }
590587
_routes.url_helpers.send("#{name}_path", prefix_options)
591588
end
592-
end
589+
}
593590
end
594591
end
595592

0 commit comments

Comments
 (0)