Django が ManyToMany 関係からオブジェクトを削除する 質問する

Django が ManyToMany 関係からオブジェクトを削除する 質問する

実際のオブジェクトを削除せずに、多対多の関係からオブジェクトを削除するにはどうすればよいですか?

例:

モデルMoodsと を持っていますInterest

Moodには多対多のフィールドinterests( models.ManyToManyField(Interest)) があります。

Moodsというインスタンスを作成しますmy_moodmy_moodsのinterestsフィールドに がありmy_interest、これは

>>> my_mood.interests.all()
[my_interest, ...]

my_interestどちらのモデル インスタンスも削除せずに から削除するにはどうすればよいでしょうmy_moodか。言い換えれば、関連するモデルに影響を与えずに関係を削除するにはどうすればよいですか。

ベストアンサー1

my_mood.interests.remove(my_interest)

Django のリレーションドキュメント

注: のインスタンスを取得する必要があるかもしれませんmy_moodmy_interestDjango のクエリセット APIこのコードを実行する前に。

おすすめ記事