У меня есть вопрос относительно ассоциации активных записей, относящийся к этой части документации по рельсам:
http://guides.rubyonrails.org/association_basics.html#the-has_many -through-association
, если у нас есть три модели:
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
В документации сказано, что набором моделей соединения можно управлять через api следующим образом:
physician.patients = patients
но что, если модель назначения, как в связанном примере, есть поле с именем assign_date, и я хочу создать новую встречу для врача и пациента в определенную дату? Следующий код создаст запись в таблице встреч, но как также указать дату встречи на третьем этапе?
physician = Physician.first
patient = Patients.first
physician.patients << patient
существует ли что-то подобное?
physician.patients.create( :patient => patient, 'appointment.appointment_time' => appointment_time )