Python Django模型表单-动态创建字段的顺序
当我不知道字段的编号和确切名称时,如何在Django ModelForm中设置订单字段? 我有一个名为FormEntry的模型,我想为其创建一个ModelForm。Python Django模型表单-动态创建字段的顺序,python,django,forms,django-forms,Python,Django,Forms,Django Forms,当我不知道字段的编号和确切名称时,如何在Django ModelForm中设置订单字段? 我有一个名为FormEntry的模型,我想为其创建一个ModelForm。 唯一替换的字段应该是plugin_数据,并使用语言前缀(基于语言设置)动态创建其自定义派生项(标签、首字母等)。 因此,如果我在设置中设置了cs和en语言,那么这些字段必须可用: plugin_data, label_cs,label_en,initial_cs,initial_en,... 新字段是在\uuuu init\uuu
唯一替换的字段应该是plugin_数据,并使用语言前缀(基于语言设置)动态创建其自定义派生项(标签、首字母等)。
因此,如果我在设置中设置了cs和en语言,那么这些字段必须可用:
plugin_data, label_cs,label_en,initial_cs,initial_en,...
新字段是在
\uuuu init\uuuu
中动态创建的,我不知道在我事先不知道字段名称的情况下如何使用新功能(Form.field\u order)。不管怎样,我自己解决了这个问题:
class someForm(forms.ModelForm):
def __init__(self, *args, **kwargs):
super(FormElementEntryTransForm, self).__init__(*args, **kwargs)
# creating new fields
#...
self.order_fields(sorted(self.fields.keys())) # sort fields alphabetically
你想在这里实现什么?因为如果你说的是基于设置在航班上动态生成数据库字段,我有一个非常糟糕的感觉。特别是当涉及到像language这样的客户端设置时。不,我只想更改表单字段的顺序。现在它们随机出现在结果表上,我想对它们进行排序,最好是按字母顺序