django1.9+允许我通过向field_order
传递一个列表来指定ModelForm
字段的顺序。但是如果我在表单的Meta
类中有exclude
,它就不起作用了:
class MyForm(ModelForm):
class Meta:
model = MyModel
exclude = ['unwanted_field1', 'unwanted_field2']
field_order = ['foo', 'bar', 'spam', 'eggs']
(我按字段在模型中定义的顺序获取字段)。如果我指定所需的字段而不是使用exclude
,则它们按我所需的方式排序:
class MyForm(ModelForm):
class Meta:
model = MyModel
fields = ['foo', 'bar', 'spam', 'eggs']
那么应该如何使用field_order
?你知道吗
我会在这里留下我自己的解决方法,以防其他人以同样的方式绊倒。似乎
field_order
是ModelForm
类的属性,而不是它的Meta
类的属性(出于某些原因:欢迎解释…)。因此,应按预期进行以下工作:相关问题 更多 >
编程相关推荐