Я знаю, что могу искать запросы, вызывая where()
для модели следующим образом:
Post.where(:title => 'My First Post')
Однако, что если я не знаю, хочет ли пользователь отфильтровать параметры поиска?
Например, у меня есть форма поиска, которая имеет необязательное поле title
. Если заголовок заполнен, форма должна искать заголовок. Если это не так, форма должна просто вернуть все поля.
Я пытался сделать что-то вроде
search = Post.all
if params[:title].present?
search.where(:title => params[:title])
end
Однако Rails немедленно возвращает результат поиска, когда я звоню Post.all, и я не могу больше добавлять условия /
Как мне это сделать?
Спасибо!