• (fields.E130) DecimalFields must define a 'decimal_places' attribute.


    DecimalField类型:
    固定精度的十进制数,一般用来存金额相关的数据。额外的参数包括DecimalField.max_digits(整个数字的长度)和DecimalField.decimal_places(小数点后面的有效位数)

    模型定义时, DecimalField类型字段如下定义:
    aaf_1kg_all = models.DecimalField(blank=True, null=True)
    报错:
    (fields.E130) DecimalFields must define a 'decimal_places' attribute.
    (fields.E132) DecimalFields must define a 'max_digits' attribute.

    即: DecimalFields字段的“decimal_places”() 和 “max_digits” 属性必须被定义,不能忽略。


    那么修改一下:
    aaf_1kg_all = models.DecimalField(blank=True, null=True, max_digits=10, decimal_places=10)
    报错:
    Traceback (most recent call last):
    [...]
    File ".../django/db/backends/utils.py", line 200, in format_number
      value = value.quantize(decimal.Decimal(".1") ** decimal_places, context=context)
    decimal.InvalidOperation: [<class 'decimal.InvalidOperation'>]

    这里注意:
    参数max_digits的值必须大于decimal_places的值。
    0.10000 有效位是5位,但是1.00000的有效位是6位。
    因此,如果max_digits=5, decimal_places=5, 那么,任何大于或者等于1的值出现都将报错。

    正面举例:
    max_digits=2, decimal_places=2
    那么该字段可表示数值范围为0.00 - 99.99
     


  • 相关阅读:
    微软软件
    绘图软件安装出错解决方法
    Windows平台 Faster-RCNN 制作自己的数据集
    POJ2456 Agressive Cows
    P1030 求先序排列
    Luogu P2015二叉苹果树
    P2234 [HNOI2002]营业额统计
    Luogu P1347排序
    Luogu P1038神经网络
    Luogu P1006传纸条
  • 原文地址:https://www.cnblogs.com/haoshine/p/5822171.html
Copyright © 2020-2023  润新知