【发布时间】:2015-05-07 16:56:29
【问题描述】:
我正在使用 modelformset_factory 以相同的形式编辑 Product 的多个实例:
ProductFormSet = modelformset_factory(Product, fields=('code', 'state'))
form_products = ProductFormSet()
效果很好。
但现在我需要在表单中显示Product 模型的附加字段,但仅针对Product 的特定实例。我不确定它是否可以在 Django 中以简单的方式完成。是否可以使用modelformset_factory 这样做?
【问题讨论】:
-
我现在没有时间写下完整的详细信息作为答案,更不用说测试以确保我是正确的,但我认为这应该可以通过更改表单的 @987654326
__init__方法中的 @ 属性,用于表单(不是表单集)类。该实例(如果有)将是__init__的instance关键字参数。 -
是的,您需要定义一个新的
ModelForm(类似于ProductForm)并覆盖__init__以动态更改表单。
标签: django django-forms