0
因此,使用南方,我想添加一个新字段is_private到我的一个模型。数据库迁移后没有变化
在介绍之后,改变models.py文件后,我应该这样做:
./manage.py schemamigration reconstructions --auto
返回:
Added field is_private on reconstructions.Reconstruction
Created 0005_auto__add_field_reconstruction_is_private.py. You can now apply this migration with: ./manage.py migrate reconstructions
这是伟大的。现在,下一个步骤是,
python manage.py migrate reconstructions
这版画:
- Migrating forwards to 0005_auto__add_field_reconstruction_is_private.
> reconstructions:0005_auto__add_field_reconstruction_is_private
- Loading initial data for reconstructions.
No fixtures found.
它似乎是在做它的工作。但是,当我事后检查现场is_private,Django的引发我一个错误:
Cannot resolve keyword 'is_private' into field.
还告诉我,南并没有更改的数据库都没有。为什么如此?
额外信息: 模型类:
class Reconstruction(models.Model):
id = models.CharField(max_length=36, primary_key=True,
editable=False)
uploader = models.ForeignKey(User, blank=True, null=True)
status = models.TextField(blank=True)
viewcount = models.IntegerField(default=0)
error_flag = models.IntegerField(default=0)
is_done = models.BooleanField(default=False)
create_date = models.DateTimeField(auto_now=True)
last_modified_date = models.DateTimeField(auto_now=True)
is_private = models.BooleanField(default=True)
导致崩溃的代码:
recordings = Recording.objects.filter(is_done=True).filter(is_private=False).order_by('-create_date')
错误表示迁移仍在运行。在shell'python manage.py migrate --list'中运行以检查迁移的状态。 – Ahsan 2012-07-27 06:15:36
该错误根本不表示数据库问题。这纯粹是在课堂上的错误。请发布型号代码,导致错误的代码和回溯。 – 2012-07-27 07:36:16
@DanielRoseman我附上了你所问的信息。我认为这似乎表明它找不到is_private列。 – hakura 2012-07-27 14:52:32