Django:向当前用户显示一组相关数据

Django:向当前用户显示一组相关数据,django,django-orm,related-content,Django,Django Orm,Related Content,我希望以给定方式显示数据库中的数据: 用户 一组电子邮件 此时此刻,我有了这样的想法: 型号.py class Person(models.Model): name = models.CharField(max_length=50) surname = models.CharField(max_length=50) objects = PersonManager() class Email(models.Model): person= models.Foreig

我希望以给定方式显示数据库中的数据:

用户

一组电子邮件

此时此刻,我有了这样的想法:

型号.py

class Person(models.Model):
    name = models.CharField(max_length=50)
    surname = models.CharField(max_length=50)
    objects = PersonManager()

class Email(models.Model):
    person= models.ForeignKey(Person,editable=False,on_delete=models.CASCADE)
    email= models.EmailField()
    objects = EmailManager()

    def __str__(self):
        return self.email

class PersonManager(models.Manager):
    def get_by_natural_key(self,name,surname):
        return self.get(name=name,surname=surname)
在myviews.py中,我重写了get\u context\u data()方法

现在,在我的html文件中,我有:

{% for user in users %} //person
{% for email in user.email_set.all %}
    {{ user.attr }} 
    {{ email }}   
{% endfor %} 
{% endfor %}  
这样,订购不是通过用户,而是通过电子邮件,例如:

代替

user1

电邮1,电邮2

user1

电子邮件1

user1


email2

您必须更改模板代码。使用以下代码:

{% for user in users %} //person
    {{ user.attr }} 
    {% for email in user.email_set.all %}        
        {{ email }}   
    {% endfor %} 
{% endfor %}  

你的问题是什么?