Rails 3.0 One-One Association Использование связанной модели в предложении WHERE - PullRequest
0 голосов
/ 24 февраля 2011

Когда я делаю:

conditions = {:first_name => 'Chris'}
Patient.joins(:user).find(:all, :conditions => conditions)

Производит (и терпит неудачу, потому что first_name отсутствует в таблице пациентов)

SELECT "patients".* FROM "patients" INNER JOIN "users" ON "users"."id" = "patients"."user_id" WHERE "patients"."first_name" = 'Chris'

Мне также нужно иметь возможность запрашивать поля модели пользователя и возвращать объекты пациента. Это возможно?

Ответы [ 2 ]

0 голосов
/ 24 февраля 2011

Попробуйте это:

conditions = ['users.first_name = ?', 'Chris']
Patient.joins(:user).find(:all, :conditions => conditions)
0 голосов
/ 24 февраля 2011

Попробуйте изменить ваш хэш условий на:

conditions = {'users.first_name' => 'Chris'}

Я использовал этот стиль в Rails 2.3, и он отлично работал для меня. Ура! * * 1004

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...