私もこの問題に遭遇し、実際にはすべてが正しく機能していることがわかりました。 Pythonでは、実際にこのようなものを定義すると、Decimal("0.0000000000")
これはコンソールに表示されます:
>>> Decimal("0.0000000000")
Decimal('0E-10')
私の状況では、 SQLite3から変換していました PostgreSQLへのバックエンド 生産のため。 SQLiteはすべての小数桁を明示的に表示(または格納)しないため、すべてが正常に機能していました。したがって、0
を挿入すると SQLite番号フィールドで選択して選択すると、0
が表示されます。 。
ただし、0
を挿入すると PostgreSQLで 数値フィールドでは、小数点以下がゼロで埋められ、0.0000000000
が挿入されます。 。したがって、PythonがこれをDecimalに入れると、Decimal("0E-10")
が表示されます。 。
更新-Django1.8で修正