データの管理に Django admin を使用しています。ユーザー、グループ、およびドメインのテーブルがあります ユーザー テーブルには、グループおよびドメイン テーブルと多対多の関係があります。Domains テーブルは、Groups テーブルと 1 対多の関係にあります。また、管理者からユーザー データを保存するときに、users_group および users_domains テーブルのデータベースをさらに更新する必要があります。どうすればいいですか?コードをどこに置くか。ありがとう。
2 に答える
2
InlineModelsを探していると思います。親モデルと同じページで関連モデルを編集できます。これ以上の制御が必要な場合は、ModelAdmin の保存メソッドをオーバーライドできます。
また、何かが必要な場合は、常にマニュアルを確認してください。それは本当にかなり良いです。
于 2009-03-11T15:33:25.600 に答える
0
他のデータベーステーブルを更新する最良の方法は、必要な取得および保存操作を実行することです。ただし、多対多の関係がある場合、デフォルトでは、関係の両側に_setパラメーターからアクセスできます。つまり、user.group_set.all()はユーザーに関連付けられたすべてのGroupオブジェクトを提供し、group.user_set.all()はグループに関連付けられたすべてのUserオブジェクトを提供します。したがって、saveメソッドをオーバーライドする(またはシグナルリスナーを登録する-どちらのオプションもスタイル的に魅力的に聞こえる)場合は、次のことを試してください。
for group in user.group_set.all():
#play with group object
....
group.save()
于 2009-03-12T14:45:48.433 に答える