model關(guān)系如下:
class Order(models.Model):
'''訂單'''
product = models.ForeignKey('Product', on_delete=models.SET_NULL, blank=True, null=True, verbose_name="產(chǎn)品")
no = models.CharField(max_length=50, blank=True, null=True, verbose_name='訂單編號(hào)', db_index=True)
total_money = models.BigIntegerField(default=0, blank=True, null=True, verbose_name='訂單總金額(分)')
settlement_money = models.BigIntegerField(default=0, blank=True, null=True, verbose_name='應(yīng)付現(xiàn)金金額(分)')
pay_money = models.BigIntegerField(default=0, blank=True, null=True, verbose_name='實(shí)付現(xiàn)金金額(分)')
create_time = models.DateTimeField(auto_now_add=True, blank=True, null=True, verbose_name='創(chuàng)建時(shí)間')
獲取指定時(shí)間段內(nèi)所有訂單的應(yīng)付金額總和
方法一:使用aggregate()
from django.db.models import Q
from django.db.models import Sum
from . import models
#方法一:
def get_count(request):
lookups = Q()
if request.GET.get('start_time'):
lookups = lookups & Q(create_time__gte=request.GET.get('start_time')
if request.GET.get('end_time')
lookups = lookups & Q(create_time__lte=request.GET.get('end_time')
total_order_money = models.Order.objects.filter(lookups).aggregate(total_settlement_money=Sum('settlement_money'))['total_settlement_money']
方法二:使用sum()
文章來(lái)源地址http://www.zghlxwxcb.cn/news/detail-737738.html
文章來(lái)源:http://www.zghlxwxcb.cn/news/detail-737738.html
到了這里,關(guān)于python django獲取某個(gè)角色的某個(gè)數(shù)據(jù)和——例如:獲取所有訂單的應(yīng)付金額總和的文章就介紹完了。如果您還想了解更多內(nèi)容,請(qǐng)?jiān)谟疑辖撬阉鱐OY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!