python - 尝试在 Django 中进行特定分组
问题描述
因此,假设我有一个模型 Fruit,其中包含一些字段:
class Fruit():
color: models.CharField(blank=True, null=True, default='', max_length='250')
sweet: models.BooleanField(default=False)
date_dropped_from_tree: models.DateField(blank=True, null=True)
baking: models.BooleanField(default=False)
我想拿我的水果查询集:
class FruitViewSet(viewsets.ModelViewSet):
queryset= Fruit.objects.all()
serializer_class = FruitSerializer
def get_queryset(self):
self.queryset = self.queryset.filter(sweet=F('sweet'), date_dropped_from_tree=F('date_dropped_from_tree'), baking=F('baking')).values('sweet', 'date_dropped_from_tree', 'baking').annotate(count=Count('sweet', 'date_dropped_from_tree', 'baking'))
return self.queryset
我希望它返回一个可以转换为类似列表的查询集:
[{ sweet: True, date_dropped_from_tree: '10-25-18', baking: False, count=5},
{ sweet: False, date_dropped_from_tree: '10-16-15', baking: True, count=3}, ...
]
当我写出来时,我意识到我的代码有点偏离基础,但我不能完全想象如何返回我想要的结果。协助表示赞赏。
解决方案
推荐阅读
- powershell - 使用 powershell 在保存的事件日志文件中搜索
- python - 查找亚军分数 >> 解释
- ios - 将现有项目迁移到 Xcode 10 GM 种子时出现分段错误 11
- php - 如何在 Prestashop 1.7 中将自定义产品添加到购物车?
- filter - 如何根据批号Odoo10按One2many字段记录分组?
- c# - 调用(标记)将任务作为异步返回的方法是否正确
- c# - C#:使用 Parallel.ForEach 和异步操作限制最大并发操作
- javascript - 如何在同一图像单击或此功能单击中再次播放滑块?
- xaml - 如何更改 ListView ViewCell ContextActions 的 BG 颜色
- sed - 如何在VI中加入一堆行