0

結合テーブル「user_number」モデルを介して「Number」モデルと has_many 関係を持つ「User」モデルがあります。私が使う:

accepts_nested_attributes_for :numbers, :allow_destroy => true

「ユーザー」モデルで。編集フォームでユーザーから番号を削除するたびに、関連する番号が「番号」テーブルで正しく削除されますが、「user_number」結合テーブルのエントリは削除されないことを除いて、すべて正常に機能します。

コントローラーの更新アクションでは、これのみを使用します。

...
if @user.update_attributes(params[:user])
...

レールに結合テーブルの関連エントリも削除させるにはどうすればよいですか?

4

1 に答える 1

1

User accept_nested_attributes_for :join_class, :allow_destroy => true が必要です。次に、関連付けを削除します。has_many :through の背後にある考え方は、他の関連付けが残っていない限り、n->m マッピングの m 部分を削除しないということです..

于 2010-12-26T15:49:19.030 に答える