Мне любопытно, какой лучше соответствовал бы как поле валюты? Я сделаю простые операции, такие как взятие различия, процента между старыми и новыми ценами. Я планирую сохранить две цифры после нуля (т.е. 10.50) и большинство времени, если эти цифры будут нулем, то я буду скрывать эти числа и отображать его как "10"
PS: Валюта НЕ является базирующимся долларом :)
Всегда используйте DecimalField
для денег. Даже простые операции (сложение, вычитание) не застрахованы от проблем с округлением плавающих значений:
>>> 10.50 - 0.20
10.300000000000001
>>> Decimal('10.50') - Decimal('0.20')
Decimal('10.30')