2011-09-15 5 views
9

Estoy tratando de tener el valor predeterminado para las DecimalFields definidos como 0.00 en mi clase del modelo, pero incluso cuando tengo esto:Set defauls para DecimalField como 0.00

price = models.DecimalField(max_digits=8, decimal_places=2, 
       default=Decimal(0.00)) 

estoy recibiendo un error en el tratamiento de la forma:

ValidationError 
[u'This value must be a decimal number.'] 

Desde la página de error, puedo ver que el tema es que el método save consigue u'' de los campos vacíos. ¿Cómo puedo tener 0.00 almacenado?

Respuesta

12

cotizaciones poner alrededor de la serie:

Decimal('0.00') 
+0

Gracias :) tiene que recordar eso. También sobrescribí algunos de los campos en forms.py y los configuré como CharFields, de ahí la u '' para algunos. No puedo creer que haya pasado por alto eso. –

+0

Eyyy, ¡no te preocupes! Si tuviera un dólar por todo lo aparentemente simple que he pasado por alto ... Tendría muchos dólares. Al menos un puñado. – jathanism

+0

Estoy usando Django 1.3 y acepta valores sin comillas muy bien. Por defecto = Decimal (0.00) – vfclists