Django ORM额外多次返回

时间:2017-05-11 09:12:58

标签: python django django-1.3

Django 1.3.7中是否有办法从一个额外的选择中返回多个值? 例如,我有两个额外的选择用于获得两个单独的值,我也想得到他们的差异(我需要能够过滤它),而无需额外的查询:

invoices = invoices.extra(select={"value_storned_left": 
    add_invoice_storned_total_query()})
invoices = invoices.extra(select={"total_value_paid": 
    add_invoice_total_paid_query()})

我没有在Django 1.3中找到使用注释的解决方案,所以我想知道是否可以组合这两个查询并在那里获得差异并从同一个额外查询中返回3个值,可能会得到这样的结果:

invoices = invoices.extra(select={("value1", "value2", "value3"): 
    combined_query()})

有没有办法做到这一点,它看起来如何。 到目前为止我发现的唯一方法是制作和额外的第三个查询以获得差异,这使用了我在前2个查询中所做的事情,因此这需要更长的时间而且它在数据库上更重。

由于

0 个答案:

没有答案