django в сигнале post_save DecimalField становится плавающим типом - PullRequest
0 голосов
/ 10 сентября 2018

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 для его преобразования, мне просто интересно, почему это так.

Спасибо.

...