【问题标题】:How retrieve all comments of all posts如何检索所有帖子的所有评论
【发布时间】:2010-05-25 17:43:42
【问题描述】:

我有一个博客模型、一个帖子模型和一个评论模型:

class Blog(models.Model):

    title = models.CharField(_('name'), max_length=80)        
    creator = models.ForeignKey(User, related_name="created_pages")
    created = models.DateTimeField(_('created'), default=datetime.now)
    description = models.TextField(_('description'), null=True, blank=True)

class Post(models.Model):

    title = models.CharField(_('title'), max_length=60, blank=True, null=True)
    body = models.TextField(_('body'))
    blog = models.ForeignKey(Blog, related_name="posts")
    user = models.ForeignKey(User)     
    comments = generic.GenericRelation(Comment)


class Comment(models.Model):

    content_type = models.ForeignKey(ContentType)
    object_id = models.PositiveIntegerField(_('object ID'))
    content_object = generic.GenericForeignKey()
    user = models.ForeignKey(User)  
    body = models.TextField(_('body'))

在一个视图中,我使用此指令检索所有帖子:

    posts = blog.posts.all()

所以我的问题是:

如何检索模板中所有帖子的所有 cmets ?

我试过了,但是没有显示 cmets:

{% for post in posts %}

  {{ post.title }} 
  {{ post.body }} 

      {% for comment in post.comments.all %}

         {{ comment.body }} 

      {% endfor %} 

{% endfor %}

【问题讨论】:

    标签: django django-models django-templates


    【解决方案1】:

    你刚刚错过了all

    {% for comment in post.comments.all %}
    

    【讨论】:

      【解决方案2】:

      试试这个

      {% for comment in post.comments_set.all %}
      

      【讨论】:

      • 我遇到了同样的问题。我没有看到 cmets :(
      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2019-04-12
      • 1970-01-01
      • 2015-03-04
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多