models.py
from django.db import models
from django.db.models.signals import pre_save, post_save
class Order(models.Model):
total = models.DecimalField(default=0.00, max_digits=20, decimal_places=2)
def post_save_order():
if created:
print(type(instance.total)) # here
post_save.connect(post_save_order, sender=Order)
我认为'total'字段应该为Decimal类型,但是当我保存Order实例时,它总是打印<class 'float'>
我知道我可以使用'decimal.Decimal'来转换它,我只是想知道为什么它的行为如此。
谢谢。