Ruby on Rails: Форма поиска - несколько полей поиска

Я пытаюсь создать приложение, которое позволяет пользователю осуществлять поиск в базе данных. Структура страницы поиска будет работать с некоторыми выпадающими меню, в которых будут отображаться данные, уже находящиеся в базе данных, для сужения поиска, а также текстовые поля, позволяющие пользователю вводить ключевые слова, такие как «имя проекта». У меня возникли проблемы с получением рельсов для сбора всей информации, введенной в форму поиска, и выполнением одного большого поиска.

Вот часть моего поискового макета:

<%= form_tag search_path, :method => 'get' do %>

<%= hidden_field_tag :direction, params[:direction] %>
 <%= hidden_field_tag :sort, params[:sort] %>
<p>
<%= text_field_tag :search, params[:search] %>
<%= submit_tag "Search Project Name", :project_name => nil %>
</p>
<p>
<%= text_field_tag :search, params[:search] %>
<%= submit_tag "Search Client", :client => nil %>
</p>
<% end %> 

Вот мой индекс и поисковые действия в контроллере проекта:

def index
@projects = Project.all

respond_to do |format|
  format.html # index.html.erb
  format.json { render :json => @projects }
 end
end

def search

@project_search = Project.search(params[:search]).order(sort_column + ' ' + sort_direction).paginate(:per_page => 5, :page => params[:page])


end

и вот часть моего файла models / project.rb

def self.search(search)
if search
  where('project_name LIKE ?', "%#{search}%") || where('client LIKE ?', "%#{search}%")
else
  scoped
end
end

Как вы видите, я просто пытаюсь найти имя_проекта или клиента. Если я смогу заставить это работать, я буду расширять его на другие области.

Функциональность на данный момент заключается в том, что, когда я пытаюсь найти его в обоих полях, он перезаписывает один и выполняет только одно из полевых поисков.

Я новичок в ROR, так что, надеюсь, кто-то может помочь. Любые предложения будут оценены.

Заранее спасибо!

Ответы на вопрос(2)

Ваш ответ на вопрос