0

我有一个工作 django 项目,我想添加一个新的模型属性。我该怎么做呢?

目前我已经完成

class Stream(models.Model):
    workingattributes = models.CharField(max_length=100)
    step = models.CharField(max_length=1)

当我运行“python manage.py runserver”时,我收到一个

DatabaseError: (1054, "Unknown column 'livestream_stream.step' in 'field list'")

我已经进入 MAMP 并访问了我的数据库并添加了一个新列“步骤”,但我收到了同样的错误。有人对如何添加新属性有建议吗?谢谢

4

2 回答 2

3

您需要使用South(或类似的东西)来进行 Schemamigration。阅读文档以了解如何操作。这很容易,并且在您的项目后期(当您的数据库中有大量数据时)非常有用。唯一的其他选择(除了使用其他迁移工具)是删除数据库并重新创建它,这将丢失您的所有数据。

于 2013-08-15T18:19:52.023 回答
0

您应该按照@Daniel Rosenthal 的建议使用 South,但是在创建列后您仍然收到错误的原因是您创建的列不应该被命名为appname_modelnamemodel_name需要foo_step

于 2013-08-15T18:45:24.643 回答