Мой пользовательский метод проверки не работает, и чтобы убедиться, что он даже вызван, я добавил к нему sys.exit()
.Формы завершают сохранение с ошибкой и игнорируют метод, и он даже не вызывается, поскольку exit()
не имеет никакого эффекта:
from django.conf import settings
from django import forms
class Category(MPTTModel):
class Meta:
verbose_name_plural = "Categories"
name = models.CharField(max_length=100)
def clean_name(self):
import sys
sys.exit()
name = self.cleaned_data["name"]
if settings.PK_PLACEHOLDER in name:
raise forms.ValidationError(f"{settings.PK_PLACEHOLDER} "
"is a reserved placeholder!")
return name
Почему это так?