こんにちは、多対多のフィールドが 2 つあるモデルがあります。1 つはスルー テーブルを使用しない標準の m2m フィールドですが、もう 1 つはもう少し複雑でスルー テーブルがあります。Django forms.modelform を使用してフォームを表示および保存しています。フォームを保存するために必要なコードは
if form.is_valid():
f = form.save(commit=False)
f.modified_by = request.user
f.save()
form.save_m2m()
フォームを保存しようとすると、次のエラーが表示されます。
中間モデルを指定する ManyToManyField に値を設定できません。
スルーテーブルのために form.save_m2m() を実行すると、これが発生していることがわかります。私がやろうとしているのは、Django にスルー テーブルで m2m フィールドを無視するように指示することですが、スルー テーブルなしで m2m フィールドを保存することです。その後、スルー テーブル フィールドのデータを手動で保存できます。
ありがとう