我有类似以下(简化)模型:现在显示models.ManyToManyField为内联,以相同的形式models.ForeignKey直列
models.py
class Sample(models.Model):
name=models.CharField(max_length=200)
class Action(models.Model):
samples=models.ManyToManyField(Sample)
title=models.CharField(max_length=200)
description=models.TextField()
,如果Action.samples
本来的一个ForeignKey
代替ManyToManyField
,当我在Sample
在Django管理显示Action
作为TabularInline
,我会得到一个数列,每个都包含一个很好的形式进行编辑或添加其他Action
。然而;当我使用显示上述作为内联以下:
class ActionInline(admin.TabularInline):
model=Action.samples.through
我得到一个选择框列出所有可用的行动,而不是一个漂亮的形式来创建一个新Action
。
我的问题是:我如何显示ManyToMany关系作为一个内联的表格输入信息描述?
原则上它应该是可能的,因为从Sample
的角度来看,情况在两种情况下是相同的;无论关系是ForeignKey
还是ManyToManyRelation
,每个Sample
都有一个Action
的列表。也;通过Sample
管理页面,我从不想从现有的Action
中选择,只创建新的或编辑旧的。