@lexxeice

Rails 5, как сформировать выборку из базы данных по нескольким полям?

Суть такая, делаю панель поиска пользователей на странице, и обрабатываю введенные значения следующим образом:

users = User.where("first_name LIKE ? or last_name LIKE ?", "%#{params[:search]}%",
"%#{params[:search]}%") if params[:search].present?

Если искать только по имени(first_name) или фамилии(last_name), то все хорошо работает, но если ввести имя и фамилию сразу, например "Иван Иванов", то поиск соответственно не работает.

Я не силен в запрос к базе данных, подскажите как мне обрабатывать еще вариант с введенными именем и фамилией одновременно?
  • Вопрос задан
  • 214 просмотров
Решения вопроса 1
@lexxeice Автор вопроса
Нашел уже сам, все оказалось довольно просто, код примет следующий вид:

users = User.where("first_name || ' ' || last_name like ?", "%#{params[:search]}%") if params[:search].present?
Ответ написан
Комментировать
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы