Django 如何清理InlineFormSet中的某个字段?

Django 如何清理InlineFormSet中的某个字段?,django,inline-formset,Django,Inline Formset,我需要清理内联表单集中的一个特定字段,但我不知道怎么做 我尝试过使用formsetdef clean(self)方法,但不知道在哪里保存已清除的值。如果我尝试将清理后的值设置为forms[0]。data['field']我会得到“This QueryDict instance is immutable”错误 在“正常”形式下,它通过使用def clean\u fieldXY(self)方法工作,在该方法中,我返回已清理的\u值 请提供帮助。您可以将内联表单集设置为使用表单类,然后可以为字段创建c

我需要清理内联表单集中的一个特定字段,但我不知道怎么做

我尝试过使用formset
def clean(self)
方法,但不知道在哪里保存已清除的值。如果我尝试将清理后的值设置为
forms[0]。data['field']
我会得到“This QueryDict instance is immutable”错误

在“正常”形式下,它通过使用
def clean\u fieldXY(self)
方法工作,在该方法中,我
返回已清理的\u值


请提供帮助。

您可以将内联表单集设置为使用表单类,然后可以为字段创建
clean
函数

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)