这是我的两个模特
class Category(models.Model):
name = models.CharField(max_length = 50)
description = models.CharField(max_length = 1000)
created = models.DateTimeField(auto_now_add=True)
def __unicode__(self, ):
return self.name
class Post(models.Model):
subject = models.CharField(max_length=50, blank=True)
description = models.CharField(max_length=1000)
created = models.DateTimeField(auto_now_add=True)
category = models.ManyToManyField(Category)
def __unicode__(self, ):
return self.subject
我在模板中显示每个帖子的主题,描述和日期。但我也想显示每个帖子的相应类别。
这是我观点的一部分
def index(request):
posts = Post.objects.order_by("-created")
return render(request,'posts/index.html', {'posts':posts})
然后我如何尝试在模板中显示它:
{% for post in posts %}
<div>
{{ post.subject }}<br />
{{ post.description }}<br />
{{ post.created }} | of {{ post.category }}
</div>
{% endfor %}
但是这个类别不会出现,我得到的只是
<django.db.models.fields.related.ManyRelatedManager object at 0x7ff7e40a0c90>
我已经尝试过post.category.name和其他随机组合,但它不提供任何内容或解析错误。我不知道如何显示类别。
答案 0 :(得分:0)
那是Manager
。像使用任何其他Manager
一样使用它(例如Post.objects
)。
{% for category in post.category.all %}