python - 如何在 Django ManyToMany 关系中返回两个相关模型的字段?
问题描述
我有两个模型:
class P(mdoels.Model):
name = models.CharField(null=False,max_length=120)
...
class F(mdoels.Model):
name = models.CharField(null=False,max_length=120)
...
p = models.ManyToManyField(P)
我需要这样的查询:
SELECT p.name, f.name
FROM f
JOIN f_p ON f.id = f_p.f_id
JOIN p ON p.id= f_p.p_id
我可以使用f.objects.filter()
,但它不返回的字段,p
我只需要显示一个包含两个名称的列表。
在psql
查询中像我需要的那样工作。我怎样才能在 Django 中做到这一点?
解决方案
尝试values_list
文档
F.objects.values_list('name', 'p__name')
推荐阅读
- php - 如何让 php 显示 cookie 的值?
- ios - 为什么在 iOS 上运行的空白离子电容器应用程序返回此错误:无法连接到服务器
- security - 保护 hashcorp 保险库 API 令牌
- c++ - 如何以矩阵形式打印我的 2D 矢量?C++
- java - 为什么我的代码说 JOptionPane 和 Interger 是无法找到的变量?
- python - Python中两组不同数据的合并方法
- python - 在 jinja 中引用渲染函数参数
- c# - C#使用`[]`保存具有特定文件名的excel文件不起作用
- c# - 通过 Postman 测试 REST API 会引发参考错误
- android - Android/Boost.log 应用程序在启动时崩溃