Django ORM queryset将整数字段作为字符串

2024-04-25 21:41:08 发布

您现在位置:Python中文网/ 问答频道 /正文

results = UmUrl.objects \
            .filter(created_at__gte=sdate, created_at__lte=edate) \
            .annotate(timeValue=self.get_date_format(param)) \
            .values('timeValue') \
            .order_by('timeValue') \
            .annotate(blocked=Sum(Case(When(operation=0, then=1), default=0, output_field=models.IntegerField()))) \
            .annotate(unBlocked=Sum(Case(When(operation=1, then=1), default=0, output_field=models.IntegerField())))

“operation”字段是整数类型。这段代码创建了一个sql查询,但是在sql中reult'when'参数显示为字符串类型。这样它就不起作用了。在

像这样的sql输出。我怎样才能解决这个问题?在

^{pr2}$

Tags: defaultfieldoutputsqlmodelsoperationatwhen