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