FloatField 나 DecimalField 한번만 테스트해주실 수 있나요? class

 
오재용

FloatField 나 DecimalField 한번만 테스트해주실 수 있나요?
class A(models.Model):
test = models.FloatField()

이런 모델이 있을 때,

10.1
10.12
10.123

10.12345678901234 까지는 그대로 저장되지만,
10.123456789012345 를 저장하면
10.12345678901235 로 반올림 된 값이 저장됩니다.
DecimalField(max_digits=20, decimal_places=18) 필드를 이렇게 DecimalField로 바꿔서 저장해도 16번째 숫자에서 반올림되어 Decimal(‘10.123456789012350000’) 이렇게 저장됩니다.

a = A(test=10.123456789012345)
a.test 이렇게 하면 값이 잘 불려오지만 db에서 a를 가져와 test 필드 값을 불러내면 반올림 되는 값이 나오는 걸 보면 db에 저장되기 전에는 올바른 값을 갖고 있고 저장될 때 값이 반올림 되는 것 같습니다.

장고 다큐먼트에도 이에 대한 설명이 없고 검색해봐도 이에 대한 설명이 나오지 않는데… 혹시 이거 테스트 해주실 수 있나요? 아니면 이에 대해 설명해주실 수 있나요??

감사합니다.

Advertisements