Как сделать так, чтобы многие ко многим или внешний ключ не требовался в модели для django?

#python #django #django-models

#python #django #django-модели

Вопрос:

вот моя модель :

 class Page(models.Model):
    template = models.CharField(max_length=200,blank=True)
    self_url = models.ForeignKey('liens.Lien',null=True,blank=True)
    Categorie = models.ForeignKey(Categorie_Page,null=True,blank=True)
    Liens = models.ManyToManyField('liens.Lien',related_name="Liens sur la page",null=True,blank=True)
    Nom = models.CharField(max_length=200)
    ImagesSite = models.ManyToManyField('presentation.ImageSite',null=True,blank=True)
    Texte_contenu = models.ManyToManyField('presentation.Texte_contenu',null=True,blank=True)
    Note_divers = models.ManyToManyField('notes.Note_divers',null=True,blank=True)  
    MiseEnForme = models.ManyToManyField('presentation.MiseEnForme',null=True,blank=True)
    Menu = models.ManyToManyField('presentation.Menu',null=True,blank=True)
    Avis = models.ManyToManyField('moteur.Avis',null=True,blank=True)
    Regle = models.ManyToManyField('regles.Regle',null=True,blank=True)
    Pack = models.ManyToManyField('moteur.Pack',null=True,blank=True)
    Imageventes = models.ManyToManyField('moteur.ImageVente',null=True,blank=True)
    Film = models.ManyToManyField('moteur.Film',null=True,blank=True)
    ImageFilm = models.ManyToManyField('moteur.ImageFilm',null=True,blank=True)
    ImageActeur = models.ManyToManyField('moteur.ImageActeur',null=True,blank=True)
    generated = models.DateTimeField('date published',blank=True)
    modified = models.DateTimeField('date modified',blank=True)
    protege = models.BooleanField(blank=True)
  

и я хочу, чтобы все мои поля были пустыми.
Как я могу это сделать?

У меня есть :

 pages_page.self_url_id may not be NULL
  

или это поле обязательно для этого…

С уважением Bussiere

Комментарии:

1. итак, в чем именно заключается вопрос?

Ответ №1:

Установите в соответствующих полях null=True и обновите свою базу данных.

Похоже, вы уже установили значение null на self_url , так что проблема в том, что ваша база данных не была обновлена этой информацией с возможностью обнуления. Syncdb не будет обновлять ваши таблицы!

запустите python manage.py reset myapp (это уничтожит / воссоздаст вашу таблицу)

Комментарии:

1. В качестве дополнительного примечания, запрашивающий может захотеть в будущем изучить инструмент миграции схемы базы данных Django South.