Django taggit:验证用户输入的内容
django taggit==1.2.0 Django==3.0.8Django taggit:验证用户输入的内容,django,django-taggit,Django,Django Taggit,django taggit==1.2.0 Django==3.0.8 class TagMixin(models.Model): tags = TaggableManager(verbose_name="Tags") # django-taggit class Meta: abstract = True class Post(TagMixin, models.Model): category = model
class TagMixin(models.Model):
tags = TaggableManager(verbose_name="Tags") # django-taggit
class Meta:
abstract = True
class Post(TagMixin,
models.Model):
category = models.ForeignKey(Category,
on_delete=models.PROTECT,
verbose_name="Category")
def is_featured(self):
return SPECIAL_TAGS.FEATURED.value in self.tags.names()
def is_news(self):
return self.category.slug == SPECIAL_CATEGORIES.NEWS.value
def _validate_featured(self):
if not self.is_news() and self.is_featured():
raise ValidationError("Featured can be in News only.")
问题
在管理站点中,标签字段可见。但实际上这不是一个领域。是经理
因此,我的验证器不能正常工作:它不能验证管理站点中的字段
的功能是从数据库中提取标记名
如何验证用户输入的标签?验证需要访问的不仅仅是标签(正如您所看到的,它意味着标签和类别之间的相互依赖性)