Используя пример на направляющих рельсов :
class Physician < ActiveRecord::Base
has_many :appointments
has_many :patients, :through => :appointments
end
class Appointment < ActiveRecord::Base
belongs_to :physician
belongs_to :patient
end
class Patient < ActiveRecord::Base
has_many :appointments
has_many :physicians, :through => :appointments
end
Скажите, Appointment
имеет атрибут exam_room_id
.Я хочу использовать ActiveRecord для получения набора результатов, который содержит Physician's
Patients
и в какой комнате экзамена находится Patient
.
Мне кажется, что я должен быть в состоянии сделать что-то вроде этого:
Physician.first.patients.each do |patient|
patient.appointment.exam_room_id
end
Это не работает, потому что Physician has_many :appointments
(то есть: ни одной встречи).
Существует ли элегантный «рельсовый способ» доступа к атрибутам Appointment
вместе спо обе стороны от has_many :through?