Добавление второго атрибута в базовый поиск (Rails 3) - PullRequest
1 голос
/ 08 февраля 2012

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

Форма поиска:

<%= text_field_tag :search, params[:search], :class => 'search_field' %>
<%= submit_tag "Search", :name => nil %>

Контроллер:

@usersearch = User.search(params[:search])

Модель пользователя:

def self.search(search)
  if search
    where('name LIKE ?', "%#{search}%")
  else
    all
  end
end

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

1 Ответ

4 голосов
/ 08 февраля 2012

Просто добавьте оператор OR с электронной почтой:

def self.search(search)
  if search
    where('name LIKE ? OR email LIKE ?', "%#{search}%","%#{search}%")
  else
    all
  end
end
...