Из руководства по ассоциациям Rails они демонстрируют связь «многие ко многим» с помощью has_many: через, например:
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
Как мне создавать и удалять встречи?
Если у меня есть @physician
, могу ли я написать что-то вроде следующего для создания встречи?
@patient = @physician.patients.new params[:patient]
@physician.patients << @patient
@patient.save # Is this line needed?
А как насчет кода для удаления или уничтожения? Также, Если пациент больше не существует в таблице встреч, будет ли он уничтожен?