如何从django-taggit获取所有(唯一)标签?我想在侧栏中显示所有标签。 目前我能够获取特定帖子的所有标签,但现在我需要获取整个博客中的所有唯一标签。获取taggit的所有标签
代码models.py:
from django.db import models
from taggit.managers import TaggableManager
# Create your models here.
class Post(models.Model):
title = models.CharField(max_length=100)
body = models.TextField()
created = models.DateTimeField()
tags = TaggableManager()
谢谢。我应该在Post中添加“tags = Tag.objects.all()”吗?以及如何显示它? – Robby
你的意思是对于一篇文章,即post = Post.objects.get(pk = 1)?或所有帖子(Post.objects.all())? – 2012-10-15 12:37:00
@Vino不,你不应该把它添加到你的'Post'模型。编辑您想要显示边栏的当前视图,并将标签列表传递给您的模板。 'Tag.objects.all()'是通过Django ORM检索对象的标准方法。查看[documentation](https://docs.djangoproject.com/en/dev/topics/db/queries/#retrieving-objects)以获取更多详细信息。如果您只需要标签名称,请使用list comprehension:'tag_names = [Tag.objects.all()]中的标签'' –