返回由外键与模型相关的字段

时间:2018-02-16 21:41:24

标签: python django

class SenderInfo(models.Model):
    #to create unique id numbers
    sender = models.CharField(max_length=15)
    id_number = models.IntegerField(blank=True, null=True)
class Messages(models.Model):
    message_sender = models.ForeignKey(SenderInfo, related_name='messages')
    message_body = models.TextField()

我想只返回SenderInfo的每个实例的所有消息。所以我可以看到用户所做的所有消息。我知道如何查看特定消息的发件人,但是实现相反的最简单的方法是什么?

2 个答案:

答案 0 :(得分:3)

这将返回包含所有消息的查询集:

sender.messages_set.all()

答案 1 :(得分:1)

你可以这样做:

<强> views.py

sender_infos = SenderInfo.objects.all()

HTML模板

{% for sender_info in sender_infos %}
    {{sender_info.sender}}
    {{sender_info.id_number}}
    {% for message in  sender_info.messages_set.all %}
        {{message.message_sender}}
        {{message.message_body}}
    {% endfor %}
{% endfor %}