获取错误 DecimalFields 必须定义 'max_digits' 属性

Getting error DecimalFields must define a 'max_digits' attribute

我对这些 DecimalField 类型有疑问。

我有下一个型号:

class Mediciones(models.Model):
    id = models.AutoField(primary_key=True)
    nombre = models.CharField(max_length=30, verbose_name='Nombre dispositivo')
    dispositivo = models.ForeignKey(Dispositivos, on_delete=models.CASCADE)
    temperatura = models.DecimalField(max_digits=5, decimal_places=2)
    humedad = models.DecimalField(max_digits=5, decimal_places=2)
    ruido = models.DecimalField(max_digits=7, decimal_places=2)
    c02 = models.DecimalField(max_digits=7, decimal_places=2)
    alerta = models.BooleanField(null=False)
    fecha = models.DateTimeField(verbose_name="Fecha", blank = False)

如你所见,我有四个DecimalField,它们都定义了“max_digits”和“decimal_places”,并且max_digits大于decimal_places.尽管如此,我还是收到错误消息“DecimalFields 必须定义 'max_digits' 属性。”当我尝试进行迁移时。你知道为什么吗?

提前致谢!

尝试重新排序参数,使其看起来像:

temperatura = models.DecimalField(decimal_places=2, max_digits=5)
humedad = models.DecimalField(decimal_places=2, max_digits=5)
ruido = models.DecimalField(decimal_places=2, max_digits=7)
c02 = models.DecimalField(decimal_places=2, max_digits=7)

这是我认为唯一可能出错的地方,我曾经遇到过这个问题,我这样做是为了解决它。

最后我设法解决了。问题不在于语法,它似乎与 Python 缓存有关。我意识到在更改某些字段时它不断出现(尽管我删除了出错的字段),所以我假设我没有检查文件。我删除了“pychache”和“migrations”文件夹,进行了新的迁移并且成功了。