diff options
-rw-r--r-- | actionpack/CHANGELOG | 2 | ||||
-rw-r--r-- | actionpack/lib/action_controller/routing.rb | 4 |
2 files changed, 4 insertions, 2 deletions
diff --git a/actionpack/CHANGELOG b/actionpack/CHANGELOG index f4827f65f5..2968661954 100644 --- a/actionpack/CHANGELOG +++ b/actionpack/CHANGELOG @@ -1,5 +1,7 @@ *SVN* +* Tweak RoutingError message to show option diffs, not just missing named route significant keys. [Rick Olson] + * Invoke method_missing directly on hidden actions. Closes #3030. [Nicholas Seckar] * Require Tempfile explicitly for TestUploadedFile due to changes in class auto loading. [Rick Olson] diff --git a/actionpack/lib/action_controller/routing.rb b/actionpack/lib/action_controller/routing.rb index 8dd5f37a8b..e4d8253714 100644 --- a/actionpack/lib/action_controller/routing.rb +++ b/actionpack/lib/action_controller/routing.rb @@ -1007,8 +1007,8 @@ module ActionController merged = recall.merge(options) if named_route - path = named_route.generate(options, merged, expire_on) - raise RoutingError, "#{named_route_name}_url failed to generate from #{options.inspect}, missing: #{(named_route.significant_keys - options.keys).inspect}" if path.nil? + path = named_route.generate(options, merged, expire_on) + raise RoutingError, "#{named_route_name}_url failed to generate from #{options.inspect}, expected: #{named_route.requirements.inspect}, diff: #{named_route.requirements.diff(options).inspect}" if path.nil? return path else merged[:action] ||= 'index' |