【问题标题】:How do I perform a nexted query on django models如何对 django 模型执行嵌套查询
【发布时间】:2021-12-25 15:08:44
【问题描述】:

所以我有这两个模型

  1. 个人资料(与我的默认 django 用户模型具有一对一的关系)
  2. 项目(也与我的默认 django 用户模型具有一对一的关系) 从 Item 模型,我如何使用 User 模型访问 Profile 模型

请看下面我的代码

我的模特

class Profile(models.Model):
   user = models.OneToOneField(User, on_delete=models.CASCADE)
   phone = models.CharField(max_length=200,null=True) ```

My View

def home(request):
   all_item_lists = Item.objects.all()

   context = {
       'all_item_lists':all_item_lists
       }
   return render(request, 'findit/home.html', context)

My Template

{% for list in all_item_lists %}
      <!-- how want to get the phone number of the user that posted this Item -->  
                       <span>{{list.owner.first_name }}</span>                                     
                 {% endfor %}```

【问题讨论】:

    标签: django django-models django-views django-templates django-related-manager


    【解决方案1】:

    您可以使用user.profile 访问用户的个人资料

    {% for list in all_item_lists %}
        <span>{{ list.owner.profile.phone }}</span>
        <span>{{ list.owner.first_name }}</span>
    {% endfor %}
    

    【讨论】:

    • 非常感谢,这解决了我的问题
    • 然后将其标记为正确答案,它将对社区有所帮助
    猜你喜欢
    • 1970-01-01
    • 2021-02-02
    • 1970-01-01
    • 1970-01-01
    • 2019-01-05
    • 2022-01-15
    • 1970-01-01
    • 2021-04-22
    • 1970-01-01
    相关资源
    最近更新 更多