を丸め避けるために、どのように私はこのコードを持っている:ジャンゴF()部門 -
q = MyModel.objects.order_by('-value1').annotate(
res=ExpressionWrapper(
(F('value1')/F('value2')),
output_field=FloatField()),
)
for i in q:
print(i.value1, i.value2, i.res)
ので、出力は次のようになります。
5 10 0.0
1 2 0.0
しかし、私は
5 10 0.5
1 2 0.5
が必要Wy F()結果を丸めましたか?これをしないとどうですか?
ありがとうございます!
あなたは 'float(F( 'value1'))'を試しましたか? – trantu
'F'式に関することは、Pythonが値を知りませんが、操作(この場合は除算)をデータベースに渡すことです。 PostgreSQLとMySQLの場合、整数除算はPython 2.xのように整数になります。 – schwobaseggl
@trantu float()の引数は文字列でなければなりません。 'F'ではなく数字でなければなりません。 – tim