请教一个关于django的model使用的问题

8 views
Skip to first unread message

LeonChen

unread,
Mar 12, 2013, 11:03:32 PM3/12/13
to python-...@googlegroups.com
向各位大神请教一个问题,我有以下几个model,表示销售记录,其中sale_man表示销售人员 

class Employee(models.Model): 
    name = models.CharField(max_length=80, unique=True) 

class Sale(models.Model): 
    date = models.DateField()
    currency = models.IntegerField() 
    sale_man = models.ForeignKey(Employee) 

我现在想按销售人员来汇总各个销售人员的销售总额,我采用以下聚合方式: 
sale_list = Sale.objects.all() 
sale_sum = sale_list.values('sale_man').annotate(sale_sum=Sum('currency')) 

得到以下的结果: 
[{'sale_man': 2, 'sale_sum': 8779}, {'sale_man': 3, 'sale_sum': 180711}] 

而我希望得到的sale_man这个地方显示的不是id,而是名字,比如如下: 
[{'sale_man': 'Johny', 'sale_sum': 8779}, {'sale_man': 'Tom', 'sale_sum': 180711}] 

我想使用这种ORM方式,不想使用直接调SQL:select name as sale_man, sum(curreny) as sale_num from sale inner join employee on sale.sale_man=employee.id group by sale.sale_man

请教各位,我该如何做到呢? 
Reply all
Reply to author
Forward
0 new messages