From 2d08fd250638a39fbc8509b4e1c3f87a5f9e36c6 Mon Sep 17 00:00:00 2001 From: Gert Goet Date: Thu, 25 Sep 2014 17:50:16 +0200 Subject: Remove internal options from query string of paths Fixes #17057 --- .../action_dispatch/routing/polymorphic_routes.rb | 21 +++------------------ 1 file changed, 3 insertions(+), 18 deletions(-) (limited to 'actionpack/lib/action_dispatch/routing/polymorphic_routes.rb') diff --git a/actionpack/lib/action_dispatch/routing/polymorphic_routes.rb b/actionpack/lib/action_dispatch/routing/polymorphic_routes.rb index f15868d37e..1fa438f2eb 100644 --- a/actionpack/lib/action_dispatch/routing/polymorphic_routes.rb +++ b/actionpack/lib/action_dispatch/routing/polymorphic_routes.rb @@ -116,27 +116,13 @@ module ActionDispatch action, type, opts - end # Returns the path component of a URL for the given record. It uses # polymorphic_url with routing_type: :path. def polymorphic_path(record_or_hash_or_array, options = {}) - if Hash === record_or_hash_or_array - options = record_or_hash_or_array.merge(options) - record = options.delete :id - return polymorphic_path record, options - end - - opts = options.dup - action = opts.delete :action - type = :path - - HelperMethodBuilder.polymorphic_method self, - record_or_hash_or_array, - action, - type, - opts + opts = options.reverse_merge(:routing_type => :path) + polymorphic_url(record_or_hash_or_array, opts) end @@ -159,8 +145,7 @@ module ActionDispatch end def polymorphic_path_for_action(action, record_or_hash, options) - options = options.merge(:action => action, :routing_type => :path) - polymorphic_path(record_or_hash, options) + polymorphic_path(record_or_hash, options.merge(:action => action)) end class HelperMethodBuilder # :nodoc: -- cgit v1.2.3