Django 1.9 + Photologue:没有这样的专栏
Django 1.9 + Photologue: no such column
我正在使用 Django 1.9+ Photologue 3.x 构建照片库 Web 应用程序。
当我尝试添加照片或图库时,它 returns '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、sql 迁移,其中 none 有效。
我的想法是重建 sql table 但是如何实现这个,或者任何其他方法来解决这个问题?
谢谢。
EDIT1:已尝试使用 flush
命令刷新数据库中的数据,但仍然无法正常工作。
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'
是否意味着模型中的 'slug' 字段与数据库中的实际字段 'title_slug' 不匹配?
尽管 syncdb
命令已从 Django 1.9 中删除
有python manage.py migrate appname --run-syncdb
命令。
将模型与数据库同步。
你说 Django 迁移系统 - "python manage.py migrate" 不工作。
发生什么了?您收到错误消息了吗?
我正在使用 Django 1.9+ Photologue 3.x 构建照片库 Web 应用程序。
当我尝试添加照片或图库时,它 returns '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、sql 迁移,其中 none 有效。
我的想法是重建 sql table 但是如何实现这个,或者任何其他方法来解决这个问题?
谢谢。
EDIT1:已尝试使用 flush
命令刷新数据库中的数据,但仍然无法正常工作。
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'
是否意味着模型中的 'slug' 字段与数据库中的实际字段 'title_slug' 不匹配?
尽管 syncdb
命令已从 Django 1.9 中删除
有python manage.py migrate appname --run-syncdb
命令。
将模型与数据库同步。
你说 Django 迁移系统 - "python manage.py migrate" 不工作。 发生什么了?您收到错误消息了吗?