私は、以下の関連を持っている場合...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
によって医師への既存の予定を追加することができますが、私は予定を削除する方法を見つけ出すことはできませんそれを削除せずに予定の医師のリストから削除します。私は医師のテーブルから切断された後に予定表に予定を保持したいと思います。
あなたの知恵のためにあまり前もってありがとう!
これは最も簡単な方法です。しかし、それが参照整合性を維持したいと思っていたのかどうか、そして/またはどの医師が予定されていたかを追跡することができるかどうかという疑問からは明らかではありませんでした。 nullに設定することにより、彼はその情報を失います。しかし、おそらくそれはOKです。質問は特定しません。 –