dam*_*mio 1 python django metaprogramming django-forms
我正在尝试动态生成 python 类。在这里,一个 django 形式。
class BankForm(forms.Form):
name = forms.CharField()
for i in range(10):
setattr(BankForm, 'contact_' + str(i), forms.CharField())
Run Code Online (Sandbox Code Playgroud)
但是在使用表单时,只name显示该字段。关于如何做到这一点的任何建议?
编辑:发现了modelform_factory,看起来是一种解决方案
EDIT2:更好,看起来add_fields我可以使用一种方法
您可以在表单的__init__方法中添加字段,如下所示:
class BankForm(forms.Form):
name = forms.CharField()
def __init__(self, *args, **kwargs):
super(BankForm, self).__init__(*args, **kwargs)
for i in range(10):
self.fields['contact_' + str(i)] = forms.CharField()
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
1538 次 |
| 最近记录: |