Fix #494 regression in #search_form_for

Following which we need to add a test to cover this, and then this
logic might better be extracted out to separate methods or a PORO.
This commit is contained in:
jonatack 2015-01-14 17:29:13 +01:00
parent 4b4a357a54
commit 83ce93b028
1 changed files with 4 additions and 4 deletions

View File

@ -12,15 +12,15 @@ module Ransack
options[:url] ||= polymorphic_path(
search.klass, format: options.delete(:format)
)
elsif record.is_a? Array &&
(search = record.detect { |o| o.is_a? Ransack::Search })
elsif record.is_a?(Array) &&
(search = record.detect { |o| o.is_a?(Ransack::Search) })
options[:url] ||= polymorphic_path(
record.map { |o| o.is_a? Ransack::Search ? o.klass : o },
record.map { |o| o.is_a?(Ransack::Search) ? o.klass : o },
format: options.delete(:format)
)
else
raise ArgumentError,
'No Ransack::Search object was provided to search_form_for!'
'No Ransack::Search object was provided to search_form_for!'
end
options[:html] ||= {}
html_options = {