2016-08-24 6 views
0

Я использую Django 1.9+ Photologue 3.x для создания веб-приложения для фотогалереи.Django 1.9 + Photologue: no такой столбец

Когда я пытаюсь добавить фото или галереи, она возвращает 'NO SUCH COLUMN EXCEPTION'

Request Method: GET 
Request URL: http://127.0.0.1:8000/admin/photologue/gallery/ 
Django Version: 1.9.5 
Exception Type: OperationalError 
Exception Value:  
no such column: photologue_gallery.slug 
Exception Location: //anaconda/lib/python2.7/site-packages/django/db/backends/sqlite3/base.py in execute, line 323 
Python Executable: //anaconda/bin/python 
Python Version: 2.7.12 

Затем я проверил файл модели и просмотра файла.

В model.py

@python_2_unicode_compatible 
class Gallery(models.Model): 
    date_added = models.DateTimeField(_('date published'), 
             default=now) 
    title = models.CharField(_('title'), 
          max_length=250, 
          unique=True) 
    slug = models.SlugField(_('title slug'), 
          unique=True, 
          max_length=250, 
          help_text=_('A "slug" is a unique URL-friendly title for an object.')) 
    description = models.TextField(_('description'), 
           blank=True) 
    is_public = models.BooleanField(_('is public'), 
           default=True, 
           help_text=_('Public galleries will be displayed ' 
              'in the default views.')) 
    photos = SortedManyToManyField('photologue.Photo', 
           related_name='galleries', 
           verbose_name=_('photos'), 
           blank=True) 
    sites = models.ManyToManyField(Site, verbose_name=_(u'sites'), 
           blank=True) 

    objects = GalleryQuerySet.as_manager() 

кажется правильным. Поскольку это Django 1.9, не более syncdb или clear sql methods. И я попробовал migrate/makemigrations, sqlmigrates и ни один из них не работает.

Моя идея состоит в том, чтобы перестроить таблицу sql, но как достичь этого или какие-либо другие подходы к решению этой проблемы?

спасибо.

EDIT1: попробовал команду flush, чтобы очистить данные в db, но все еще не работает.

EDIT2: Пробовало inspectdb команды, получил

class PhotologueGallery(models.Model): 
    id = models.IntegerField(primary_key=True) # AutoField? 
    date_added = models.DateTimeField() 
    title = models.CharField(unique=True, max_length=100) 
    title_slug = models.CharField(unique=True, max_length=50) 
    description = models.TextField() 
    is_public = models.BooleanField() 
    tags = models.CharField(max_length=255) 

    class Meta: 
     managed = False 
     db_table = 'photologue_gallery' 

Означает ли это, что «слизняк» поле в модели не соответствует реальному полю «title_slug» в базе данных?

ответ

0

Хотя syncdb команда удалена из Django 1.9

Существует python manage.py migrate appname --run-syncdb команда.

Какая синхронизация модели с базой данных.

0

Вы говорите, что миграционная система Django - «python manage.py migrate» не работает. Что происходит? Вы получили сообщение об ошибке?

Смежные вопросы