我想使用django为数据库查询的结果添加一个静态值(所以不使用'raw'SQL)
例如,如果我有一个带有字段make,model和color的对象Car,那么我希望我的结果集具有额外的静态值,如下所示:
make model color sales
---- ----- ----- -----
nissan bluebird black 0
ford fiesta red 0
toyota camry green 0
Run Code Online (Sandbox Code Playgroud)
我试过像代码一样
cars= Car.objects.all().annotate(sales=0)
Run Code Online (Sandbox Code Playgroud)
但是有错误.我能做什么?
干杯,戴夫
--Tindind在Fedang #django上
Sve*_*nze 70
从Django 1.8开始,annotate功能Value表达式:
cars= Car.objects.all().annotate(sales=Value(0, IntegerField()))
Run Code Online (Sandbox Code Playgroud)
而不是IntegerField你可以使用所有可用的db字段类.
Man*_*dan 10
您可以使用该extra()方法.像这样:
Car.objects.all().extra(select = {'sales': 0})
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
8194 次 |
| 最近记录: |