2009-11-27 10 views
11

ho questo models.pyDjango, Impossibile assegnare None, non consente valori nulli

import datetime 
from django.db import models 
from tinymce import models as tinymce_models 
from filebrowser.fields import FileBrowseField 

class ItemWithMedia(models.Model): 
    created = models.DateTimeField(auto_now_add=True) 
    modified = models.DateTimeField(auto_now=True) 

class Actual(ItemWithMedia): 
    published = models.DateField('Published') 
    title_hr = models.CharField('(hr)', max_length=200) 
    title_en = models.CharField('(en)', max_length=200) 
    body_text_hr = models.TextField('(hr)') 
    body_text_en = models.TextField('(en)') 

    def __unicode__(self): 
     return self.title_hr 

    class Meta: 
     verbose_name = "Aktualno" 
     verbose_name_plural = "Aktualni" 
     ordering = ['-published'] 

e ottengo questo errore quando provo a creare nuovo elemento nel sito admin: Impossibile assegnare None: "Actual .published "non consente valori nulli.

quale potrebbe essere il problema?

risposta

17
#for sql 'now()' value use 
published = models.DateField('Published', auto_now_add=True) 
#to allow sql null 
published = models.DateField('Published', null=True, blank=True) 
5

è necessario aggiungere i parametri "null = True, vuoto = True" per la definizione di pubblicato, in questo modo non sarà creato come una colonna NOT NULL nel database:

published = models.DateField('Published', null=True, blank=True) 
Problemi correlati