3

djangoモデルプロジェクトにM2Mフィールドがあります。私の見解では、update()関数を使用してモデルインスタンスを更新したいと思います。他の通常のフィールドを更新するために、フィールドの辞書を渡すことができることを私は知っています。しかし、どうすればM2Mフィールドをupdate()関数に渡すことができますか?

4

2 に答える 2

5

add()関数(の外部update())を使用して、ManyToManyFieldにリレーションを簡単に追加できます。

blog.entries.add(post_1, post_2 ...)
于 2012-07-05T23:14:41.797 に答える
0

manytomanyフィールドを更新するには、サブクラスのインスタンスを取得してから、更新関数を適用する必要があります。

クラスy:

 b = Text Field

クラスX:

 y = ManyToMany(y)

コード:

for y in x.y.all():
    if y: meet you condition for which row to update
       y.update(b='update')

djangoはM2Mでupdate()をサポートしていることを知っていると思います。これは、サポート用の関連付けテーブルを作成するだけで、更新する関連付けテーブルの行を理解できないためです。

于 2012-07-06T02:20:24.453 に答える