【发布时间】:2015-02-15 22:21:32
【问题描述】:
我在我的模型中添加了一个“nearbyzips”字段,现在我无法克服这些错误。这些是我采取的步骤。
manage.py sqlclear accounts
manage.py syncdb
我没有从这两个命令中得到任何错误,但是只要运行 manage.py check_permissions,我就会得到:
ProgrammingError: column accounts.my_profile.nearbyzips" does not exist
出于绝望,我还安装了 South(即使我不想使用它),并按照教程将现有项目转换为使用 South。这也不起作用,因此我从已安装的应用程序中删除了 south,并删除了帐户文件夹中的迁移文件夹。
我对'manage.py sqlclear accounts'的理解是它会删除实际的数据库表,然后syncdb会重建它。这似乎没有做它应该做的事情,它会消除我假设的错误。我所做的只是添加一个模型字段,这应该不难。
还有人有其他建议吗?我已经阅读了无数关于这个主题的堆栈溢出帖子,我正在阅读的唯一真正的解决方案是使用我已经完成的 sqlclear,所以我担心在解决这个问题方面我已经走到了死胡同。
【问题讨论】:
-
sync db 不添加列 - syncdb 只会创建/删除整个表。如果您添加了一个列,您需要添加您自己。如果你想让 django 为你做这件事,你需要使用 south,或者从 1.7 django 迁移开始。
标签: django