我试图根据特定的客户需求生成动态注册表单。我创建了一个UserProfile模型,其中大部分字段设置为空白=真。
当表单生成时,我从另一个db表中提取客户端指定的字段并生成注册表单。所有这些都有效,除了所有字段都允许空值。到目前为止我有这个
def RegProfileForm(include_list, *args, **kwargs):
class ProfileForm(forms.ModelForm):
class Meta:
model = hr.UserProfile
fields = include_list
def __init__(self):
super(ProfileForm, self).__init__(*args, **kwargs)
return ProfileForm()
然后我将此表格称为:
includes = ['gender','work_phone'] # dynamic fields
of = RegProfileForm(includes)
如何在运行时或生成表单时动态删除某些指定字段的blank = True需求?
答案 0 :(得分:1)
我发现我可以做这样的事情来覆盖模型中的默认值:
form = MyAuthForm(data)
form.fields['first_name'].required = True
form.fields['email'].required = False