gpt4 book ai didi

python - 无法在 django 中找出正确的 json 查询集

转载 作者:行者123 更新时间:2023-12-01 02:45:40 26 4
gpt4 key购买 nike

我需要帮助来获取 django 查询,其中我的 json 文件应该将此数据作为输出。我尝试了很多方法,但我得到的只是一些碎片,而不是完全。我是 Django 的新手,并且已经坚持了很长时间。请帮忙。谢谢:)

[{
"Group": "Mars",
"count": 10,
"Months": "June"
}, {
"Group": "Jupiter",
"count": 50,
"Months": "June"
}, {
"Group": "Mars",
"count": 70,
"Months": "July"
}, {
"Group": "Jupiter",
"count": 60,
"Months": "July"
}, {
"Group": "Mars",
"count": 30,
"Months": "August"
}, {
"Group": "Jupiter",
"count": 40,
"Months": "August"
}];

我可能尝试在 view.py 中获取火星和木星的计数,如下所示,其中 json 为 [{'Group':'Mars','count':10},{'Group': 'Jupiter','count':50}] 现在添加了月份,这是我没有得到的,而“月份”位于 charfield 中。

View .py

fm_ds=Details.objects.filter(Group='Jupiter',Div='Cross',Shift='Day').count()
m_ds=Details.objects.filter(Group='Mars',Div='Cross',Shift='Night').count()
Jupiter_dict={}
Jupiter_dict['Group']='Jupiter'
Jupiter_dict['count']=fm_ds
Mars_dict={}
Mars_dict['Group']='Mars'
Mars_dict['count']=m_ds
print Jupiter_dict
print Mars_dict
details_dict=[Mars_dict,Jupiter_dict]
context = {'data_json': json.dumps(details_dict)}

models.py 是

class Details(models.Model):
user = models.OneToOneField(User, on_delete=models.CASCADE)
Div=models.CharField(max_length=200,blank=True, null=True, default=None)
Group =models.CharField(max_length=200,blank=True, null=True, default=None)
Shift =models.CharField(max_length=200,blank=True, null=True, default=None)
Months=models.CharField(max_length=200,blank=True, null=True, default=None)

最佳答案

您可以使用annotate函数来做到这一点,例如,

Details.objects.values('Group', 'months').annotate(count=Count('Group')).order_by('months')

输出为,

<QuerySet [{'count': 5, 'months': 'December', 'Group': 'group1'},
{'count': 3, 'months': 'December', 'Group': 'group3'},
{'count': 10, 'months': 'June', 'Group': 'group1'},
{'count': 10, 'months': 'May', 'Group': 'group1'},
{'count': 6, 'months': 'May', 'Group': 'group3'}]>

计数是特定月份某个群组中的人数,无论其工作的类次如何。

希望,这就是您正在寻找的,

关于python - 无法在 django 中找出正确的 json 查询集,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45279117/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com