Python中文
首页
教程
问答
标签
搜索
登录
注册
正确的方法来注释喜欢的项目
回答此问题可获得
20
贡献值,回答如果被采纳可获得
50
分。
<p>鉴于此模型:</p> <pre><code>class Piece(models.Model): name = models.CharField(max_length=50) description = models.TextField(blank=True, null=True) favorited = models.ManyToManyField(User, through='FavoritedPieces', blank=True, null=True) class FavoritedPieces(models.Model): user = models.ForeignKey(User) piece = models.ForeignKey(Piece) created_at = models.DateTimeField(auto_now_add=True) </code></pre> <p>我怎样才能得到一个额外字段“favorited”的所有条目的列表,是真是假?这取决于用户是否将其标记为favorited</p> <p>示例: 我有一张10件的单子。用户喜欢其中3个。当我打印列表时,我还需要打印该作品是否受到该用户的喜爱</p> <pre><code>List: [ <Piece1: name.. description.. favorited:False>, <Piece2: name.. description.. favorited:False>, <Piece3: name.. description.. favorited:True>, ] </code></pre> <p>我不想列一个新的问题列表:<a href="https://stackoverflow.com/questions/14912949/how-to-compare-lists-and-get-total-matching-items-count">How to compare lists and get total matching items count</a></p> <p>我想要类似的东西:<code>MyModel.objects.annotate(total_likes=Sum('piece__total_likes'))</code></p> <p>哪种方法最好</p>
0 条评论
分类:
Python问答
请先
登录
后评论
默认排序
时间排序
1 个回答
匿名
1天前
擅长:python、mysql、java
<p>我建议你这样做:</p> <p><code>pieces = Piece.objects.annotate(favorites_count=Count('FavoritedPieces')) </code></p> <p>然后当你检查你的结果时,你可以做: <code>if piece.favorites_count > 0:</code></p> <p>我知道这不是你想要的,但我觉得很简单</p>
请先
登录
后评论
针对此问题:
更多的回答
关注
89
关注
收藏
1
收藏,
216
浏览
网友 提问于 2天前
相关Python问题
"无法将Python字节数组转换成NetworkManager / GLib的GArray_guchar"
2 回答
"无法打开包含图表的Excel文件"
2 回答
"无法找到文件/目录:尝试使用LaTeX渲染matplotlib文本"
1 回答
"无法提供0个位置参数,但给出了1个"
3 回答
"无法理解字幕"
9 回答
"无法通过webdriver+python设置浏览器偏好后抑制操作系统下载文件窗口"
6 回答
"无返回语句却仍然返回非"
2 回答
"无需使用.py扩展名分发Python脚本"
6 回答
"无需分配不必要数组的Numpy运算符结果总和"
2 回答
"日期持续时间:持续时间比较不一致?"
10 回答
"日蚀,PyDev语法着色"
9 回答
"日蚀:折叠的开放资源"
6 回答
"时间复杂度 - in运算符(包含运算符)"
6 回答
"星号 * 与 python 中的地球仪有什么关系?"
3 回答
"是否AWS Cloudwatch将两个独立维度的平均值合并在一起"
5 回答
"是否使用快捷表达式而不是三元运算符符合Python风格?"
7 回答
"是否可以在Google App Engine中增加响应超时时间?"
9 回答
"是否可以在Sublime文本中使用Bpython?"
7 回答
"是否可以将Python安装从一个Windows账户移到另一个?"
10 回答
"是否可能将NaN值单元格设置为使用SVR预测缺失值的输出?"
8 回答