我有一个表格来注册客户。我有一个 ESIdentityCardNumberField 来验证 NIF/CIF/NIE,但这种形式也被认为允许“其他”国家卡 ID,所以我添加了另一个字段来获取它们。
因此,如果指定了其他卡 ID,我需要覆盖 ESIdentityCardNumberField 验证以允许空白值。
我怎样才能得到这个?
class Client(models.Model):
name = models.CharField()
ESCardId = models.CharField(blank=True, null=True)
otherCardsIds = models.CharField(blank=True, null=True)
class ClientForm(forms.ModelForm):
ESCardId= ESIdentityCardNumberField()
class ClientAdmin(admin.ModelAdmin):
form = ClientForm
fields = ['name', 'ESCardID', 'otherCardsIds']
def save_model(self, request, obj, form, change):
if obj.ESCardId is None and obj.otherCardsIds is None:
raise ValidationError("Enter a spanish cardID or any other.")
提前致谢。