Использование поиска для запроса ссылочной модели в Rails 3? - PullRequest
2 голосов
/ 06 июня 2011

У меня есть модель под названием Person, которая has_one Address.Person имеет поля типа first_name и last_name;Address имеет postal_code, state и т. Д.

Я знаю, как использовать поиск, чтобы найти всех людей с определенным именем;это Person.find_by_last_name("Smith").Но как мне найти всех людей, где:

  • их имя_боб "Боб";и
  • их фамилия - "Смит";и
  • , которые имеют адреса с городом 'Foobar';и
  • , которые имеют адреса с почтовым индексом «12345»

1 Ответ

1 голос
/ 06 июня 2011

Когда вы ищете точные значения, вы можете передать хэш значений, которым вы хотите соответствовать, в where.Каждая ссылочная модель является собственным вложенным хешем, как в примере ниже:

Person.
  where(:first_name => 'Bob').
  where(:last_name => 'Smith').
  where(:address => { :postal_code => '12345' }).   # queries associated Address
  where(:address => { :city => 'Foobar' })          # queries associated Address
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...