質問する
1146 次
3 に答える
1
次のようなものが動作するはずです (m2m が で指定されている場合Tool
):
# 1st app
from secondapp.models import Tool
class Task(models.Model):
tools = models.ManyToManyField(Tool, through=Tool.tasks.through)
# 2nd app
class Tool(models.Model):
tasks = models.ManyToManyField("firstapp.Task")
于 2012-11-20T13:56:22.780 に答える
0
Tools
と の間にダミー モデルを作成してみてくださいTasks
。これは、特定の関係に関する追加情報を保存するために Django が通常提供するもので、仲介者として機能します。この関係をthrough=
作成するときにキーワードを使用して、それを利用します。ManyToMany
詳細については、こちらを参照してください。
私は実際に管理ページでそれを見ていませんが、管理ページにモデルを登録すると、そのモデルは と のそれぞれに関係ForeignKey
があるため、両方の関係を編集できるはずです。ダミーモデルの側面。Tools
Tasks
ただし、両方の関係にアクセスできることが非常に重要でない限り、必ずしもこれをお勧めするわけではありません.
于 2012-11-20T15:49:34.540 に答える
0
管理者の見栄えを良くするためだけに、モデルを使用しthrough
たり複雑にしたりしません。または、 admin inline を作成してみてください。インラインを使用すると、管理アプリケーションで任意のモデルの画面にサブセクションを追加できます。ドキュメントにいくつかの良い例があります。
于 2012-11-20T15:53:50.427 に答える