【发布时间】:2012-11-23 09:37:38
【问题描述】:
假设我有两个基本类,一个与另一个具有多对多关系:
class Foo(models.Model):
abc = models.TextField()
test = models.ManyToManyField(Bar)
class Bar(models.Model):
zyx = models.TextField()
然后我为 Foo 创建一个 Django 表单:
class FooForm(forms.ModelForm):
class Meta:
model = Foo
fields = ["abc", "test"]
这将创建一个带有 TextArea 的表单,供我输入新的 Foo 的 abc 变量的值,以及一个将其链接到一个或多个 Bar 对象的列表框。我想为这个特定的表单做的是,而不是 Bar 对象的列表框,能够同时创建一个(并且只有一个)新的 Bar(即,显示第二个 TextArea Bar 的 zyx 的值),然后将新的 Bar 链接到新的 Foo。 ManyToMany 关系稍后在编辑中出现,但在创建时,我想要一个 Bar 与一个新的 Foo 绑定。
是否可以通过 POST 表单一次性完成所有操作,还是我必须先使用一些 javascript 和 AJAX 来实际创建 Bar,获取它的新 ID,然后链接新的 Foo到那个?
【问题讨论】:
标签: python django django-models django-forms