通过标签进行Django Admin搜索

时间:2018-11-06 10:26:15

标签: python django tags django-admin django-taggit

如何使用标签 django管理面板中进行搜索?

它将使用称为 django-taggit 包的标记进行搜索。

admin.py

@staticmethod
def get_tags(obj):
       tags = []
       for tag in obj.tags.all():
           tags.append(str(tag))
       return ', '.join(tags)

 list_display = (
        'id'
        'portions',
        'get_tags',
        'created'
    )
    search_fields = ('name', get_tags, 'created', 'id')`

models.py

from taggit.managers import TaggableManager

tags = TaggableManager(through=TaggedOffer, blank=True)
    name = models.CharField(max_length=255)
    price = models.DecimalField(
        null=True,
        max_digits=10,
        decimal_places=2,
        validators=[positive_decimal]
    )

错误 异常类型:FieldError 异常值:
无法将关键字“ get_tags”解析为字段。

1 个答案:

答案 0 :(得分:1)

在管理员中,py  search_fields =('name',get_tags,'created','id')change it to search_fields = ('name', 'tags__name', 'created', 'id')