0

我刚刚添加了该num对象,并尝试将其添加到我的管理员中,但出现以下错误:Exception Value:
no such column: game_riddle.num

这是课程:

class Riddle(models.Model):
"""represents a riddle, comprising a question and hints"""
world = models.ForeignKey(World)
question = models.TextField()
num = models.IntegerField()

我有一个小型数据库,最后一次添加我必须运行的对象:sqlclear然后syncdb

如何在不清除数据库的情况下修复我的错误?

4

2 回答 2

2
  1. 阅读本文档:http ://south.readthedocs.org/en/0.7.6/installation.html

  2. easy_install 南

  3. 安装后,在设置中的 installed_app 中放入“ south ”

  4. 不要忘记同步:python manage.py syncdb

  5. 运行这个命令:python manage.py schemamigration app_name --auto

  6. 迁移:python manage.py migrate

就是这样。接下来,如果您添加新模型或进行更改。只需执行第 5 步和第 6 步,您的模型就会更新。

于 2013-02-13T14:38:25.083 回答
1

您将需要使用迁移工具,例如South

South 为 Django 应用程序带来了迁移。它的主要目标是提供一个简单、稳定且独立于数据库的迁移层,以防止随着时间的推移给您的 Django 应用程序带来所有麻烦的模式更改。

于 2013-02-13T14:35:51.080 回答