如何限制对象在django-taggit中可以拥有的最大标记数?

jvc*_*c26 1 python tags django django-taggit

我对django-taggit作为一个在Django中处理标签的应用程序的实现印象深刻.但是,我一直无法找到一种方法来设置可应用于对象的最大标签数 - 如果愿意,则为"MAX_TAG".这可能吗?我想限制我的应用程序,例如,每个对象只有5个标签.

谢谢,

Ĵ

vdb*_*oor 5

我在管理模型中解决了这个问题:

class MyObjectAdminForm(forms.ModelForm):
    class Meta:
        model = MyModel

    def clean_tags(self):
        tags = self.cleaned_data['tags']
        if len(tags) > 3:
            raise ValidationError("....")
        return tags

class MyObjectAdmin(admin.ModelAdmin):
    form = MyObjectAdminForm
Run Code Online (Sandbox Code Playgroud)