从“循环输入”中选择“平行”对象视图.py姜

2024-05-18 15:34:06 发布

您现在位置:Python中文网/ 问答频道 /正文

我想从django的for循环中逐个选择对象视图.py在

在视图.py在

crave = CraveData.objects.filter(person=request.user.id)
    for crave1 in crave:
        #print crave1
        check = Comment.objects.filter(crave=crave1)

在注释.model.py在

^{pr2}$

在crave.model.py在

class CraveData(models.Model):
    person = models.ForeignKey(User)
    post=models.TextField(blank = True,null = True)

    date= models.DateTimeField(auto_now_add=True, blank=True)
    def __unicode__(self):
        return self.post

当打印crave1时,我得到了crave数据中与特定用户相关联的所有对象。这里我得到了crave1的打印结果是Post1,Post2。 在这里,我想选择每个渴望,这样我就可以给那个渴望分配相关的评论。在本例中,我希望选择post1,以便可以将与post1相关的注释分配给它本身。 我想这样做,以满足用户的所有需求。在

我试过用

crave1.check=Comment.objects.filter(crave=crave1)

所以我得到了这个答复

[<Comment: reply1>, <Comment: Reply1.1>, <Comment: reply1.3>]
[<Comment: reply2>]

但是

[<Comment: reply1>, <Comment: Reply1.1>, <Comment: reply1.3>] 

此注释与post1和

[<Comment: reply2>] 

此评论与post2 crave关联。在

在评论.html在

<p><strong>{{user.username}} said:</strong></p><br>
                        {% for crave1 in crave %}

                        {{crave1}}<br>
                        {% for pf in check%}
                     {{pf.reply}}<br>
                     {% endfor %}

                     {% endfor %}

所以这一切在浏览器中的结果是 管理员说:

邮政1 答复2 邮政2 答复2

基本上,我想显示帖子和它的相关评论,为特定的用户。 请帮我这个忙。在


Tags: inpybr视图trueforobjectsmodels
1条回答
网友
1楼 · 发布于 2024-05-18 15:34:06

您可以使用反向外键关系,如下所示:

{% for crave1 in crave %}
   {{crave1}}<br>
   {% for comment in crave1.comment_set.all }}
       {{comment.reply}}<br>
   {% endfor %}
{% endfor %}

这是它的文档。 related_namereverse relationships.

相关问题 更多 >

    热门问题