我需要清理内联表单集中的特定字段,但我不知道该怎么做。
我尝试过使用表单集def clean(self)
方法但不知道在哪里保存清理后的值。如果我尝试将清理值设置为forms[0].data['field']
我收到“此 QueryDict 实例是不可变的”错误。
在“正常”形式下,它的工作原理是使用def clean_fieldXY(self)
方法,其中我return cleaned_value
.
请帮忙。
您可以将内联表单集设置为使用表单类,然后您可以创建一个clean
场的函数。
In myapp/forms.py
:
class InlineFormsetForm(forms.Form)
myfield = forms.CharField(required=False, max_length=50)
def clean_myfield(self):
data = self.cleaned_data['myfield']
if data == 'badinput':
raise forms.ValidationError("I hates it!")
return data
然后,在myapp/views.py
from myapp.forms import InlineFormsetForm
from myapp.models import ParentRecord, ChildRecord
def editmything(request):
MyFormSet = inlineformset_factory(ParentRecord, ChildRecord, form=InlineFormsetForm)
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)