Django-taggit: как получить все теги, отфильтрованные по определенному типу постов

Я создаю блог, и у меня есть два статуса для постов, Опубликован и Черновик. Я хочу отобразить все теги всех опубликованных постов, используя Django-taggit.

вот как получить все теги для всех типов постов, опубликованных и черновиков в моем представлении:

object_list = Post.published.all()
tags = Tag.objects.filter()

А я хочу получить только теги для опубликованных постов

Я застрял, помогите!

Вы можете сделать что-то вроде этого

inner_qs = Post.published.all().values('tags')
tags = Tag.objects.filter(id__in=inner_qs)

Вы должны заменить значение tags на ваше фактическое имя поля для тега, и то же самое с полем id в модели тега в фильтре id__in.

Надеюсь, это поможет.

Вернуться на верх