这可能是一个稍微宽泛的问题,但实质上,我希望允许我的网站用户能够向表单添加字段(文本或字段),以便其他用户可以填写它们。我应该如何构建我的模型/表单/视图以允许这种类型的自定义?谢谢!
答案 0 :(得分:1)
使用元类:
from django.forms import BaseForm
fields = {
'name': forms.CharField(max_length=50),
'id': forms.IntegerField()
}
type('CustomForm', (BaseForm,), { 'base_fields': fields })
要获得更全面的方法,请使用django-forms-builder:
http://django-forms-builder.readthedocs.org/en/latest/
Mezzanine也支持这一点:
http://mezzanine.jupo.org/docs/packages.html#module-mezzanine.forms