如果我有以下的协会......Ruby on Rails 3:如何在不删除数据库的情况下断开对象与其他对象的连接?
class Physician < ActiveRecord::Base
has_many :appointments
has_many :patients, :through => :appointments
end
class Appointment < ActiveRecord::Base
belongs_to :physician
belongs_to :patient
end
我可以将现有的任命添加到医生...
appoint = Appointments.find(params[:id])
phys = Physician.find(params[:id])
phys.appointments << appoint
phys.save
,但我无法弄清楚如何删除约会从医师名单中删除而不删除它。我想在与Physician表断开连接后将约会保留在约会表中。
非常感谢您的智慧!
这是最简单的方法。但是从问题来看,他是否想保持参照完整性和/或是否能够跟踪一个约会过去曾经联系过的医生。通过将其设置为空,他会丢失该信息。但也许它确定。这个问题没有具体说明。 – 2012-02-27 22:14:49