Saya juga mengalami masalah ini dan menemukan bahwa sebenarnya semuanya berfungsi dengan baik. Dalam Python jika Anda benar-benar mendefinisikan sesuatu seperti ini Decimal("0.0000000000")
Anda akan melihat ini di konsol:
>>> Decimal("0.0000000000")
Decimal('0E-10')
Dalam situasi saya, saya mengonversi dari SQLite3 backend ke PostgreSQL untuk produksi. Semuanya bekerja dengan baik di SQLite, karena tidak secara eksplisit menunjukkan (atau menyimpan) semua angka desimal. Jadi jika Anda memasukkan 0
di bidang nomor SQLite dan kemudian pilih, Anda akan mendapatkan 0
.
Tetapi jika Anda memasukkan 0
dalam PostgreSQL bidang numerik itu akan melakukan pengisian nol pada desimal dan memasukkan 0.0000000000
. Jadi ketika Python menempatkan ini dalam Desimal Anda akan melihat Decimal("0E-10")
.
PERBARUI - diperbaiki di Django 1.8