av一区二区在线观看_亚洲男人的天堂网站_日韩亚洲视频_在线成人免费_欧美日韩精品免费观看视频_久草视

您的位置:首頁技術文章
文章詳情頁

python - django 按日歸檔統計訂單求解

瀏覽:117日期:2022-08-02 14:48:12

問題描述

models.py:訂單數據模型

class Order(models.Model): date = models.DateTimeField(default=timezone.now) paid_card = models.PositiveIntegerField(blank=True, null=True) paid_cash = models.PositiveIntegerField(blank=True, null=True) paid_gift = models.PositiveIntegerField(blank=True, null=True)statur = models.CharField() @property # 實收金額(paid_in) = paid_card + paid_cash + paid_gift def paid_in(self):return sum(filter(None, [self.paid_card, self.paid_cash, self.paid_gift]))

views.py: 按日歸檔統計每天的訂單數、訂單總額

def wx_archive(request): orders = Order.objects.filter(status=’closed’).annotate(day=TruncDay(’start_time’)).values(’day’).annotate(count=Count(’id’), total=Sum(’paid_in’)).values(’day’, ’count’, ’total’).order_by(’day’) return render(request, ’orders/archive.html’, {’orders’: orders})

運行后報錯,提示

FieldError at /orders/archive/Cannot resolve keyword ’paid_in’ into field. Choices are: count, day, id, paid_card, paid_cash, paid_gift, status

請問,我該如何統計每日的總 paid_in?

問題解答

回答1:

你的paid_in并不是數據庫字段,很明顯不能用在SQL語句中。兩個方法:

把符合時間段的orders實例取出來,用時間篩選。然后Sum(所有的order.pard_in)

數據庫層面Sum所有符合時間段的訂單的paid_card, paid_cash, paid_gift

標簽: Python 編程
相關文章:
主站蜘蛛池模板: 波霸ol一区二区 | 成人深夜福利网站 | 成人在线小视频 | 国产精品久久久久影院色老大 | 91看片网址 | 免费骚视频 | 欧美电影免费网站 | 免费在线一区二区三区 | 国产一区二区三区不卡av | 久久国产亚洲 | 国产精品一码二码三码在线 | 久久综合狠狠综合久久 | 国产精品久久777777 | 国产精品视频久久久 | 精品国产一区二区在线 | 伊人久久综合 | 国产日本精品视频 | 神马久久久久久久久久 | 国产精品夜间视频香蕉 | 欧美欧美欧美 | 国产精品久久久久久久久久99 | 成人影院免费视频 | 久久久www成人免费精品张筱雨 | 99久久免费精品视频 | 91秦先生艺校小琴 | 成年人免费网站 | 久久久性| 91毛片在线观看 | 91在线免费视频 | 久久国产精品免费一区二区三区 | 久草视频观看 | av日韩在线播放 | 黄色大片在线免费观看 | 欧美一区二区三区日韩 | 麻豆精品国产91久久久久久 | 亚洲福利视频一区二区 | 中文字幕成人av | 欧美激情精品久久久久 | 国产精品99视频 | 99久久免费观看 | 免费精品 |