Python Django中父窗体上的子窗体引发验证错误

Python Django中父窗体上的子窗体引发验证错误,python,django,forms,Python,Django,Forms,假设我有这个表格: from django import forms from django.core.exceptions import ValidationError class NameForm(forms.form): name = forms.CharField(max_length=200) class NameAgeForm(NameForm): age = forms.IntegerField() def clean(self): d

假设我有这个表格:

from django import forms
from django.core.exceptions import ValidationError

class NameForm(forms.form):
    name = forms.CharField(max_length=200)

class NameAgeForm(NameForm):
    age = forms.IntegerField()

    def clean(self):
        data = self.cleaned_data
        if data.get('age') == 24 and data.get('name') == 'Nebu':
            raise ValidationError({'name': "You can't pick that name and age, they are mine!"})
问题是,我有一个子表单,其中正在进行验证。 但是我希望我的字段错误显示在NameForm中

旁注:我无法访问父窗体,因此解决方案必须来自子窗体


现在,这是可能的吗?

方法在您的NameAgeForm上,它必须为每个字段添加自定义验证。对于验证,此字段验证特定于当前表单,我们不希望将其放入子表单中。相反,我们在ParentForm中编写了一个清理方法。所以Django帮不了你。

你说得对。。事实上,我会重新设计我的问题,这样更明显我不明白你的问题。你是如何使用NameForm和namegeform的?是的,我知道我的问题有点模糊。我目前正在更新它,以便更好地了解我的情况。简而言之,它涉及摇摆