django syncdb 与更新后的模型
我最近更新了我的模型,给它添加了一个布尔字段(就是可以是“真”或“假”的那种)。但是当我运行 python manage.py syncdb
这个命令的时候,它并没有把这个新字段加到数据库里。请问我该怎么解决这个问题呢?
7 个回答
14
Django 现在并不会自动处理这个问题。你可以选择以下几种方法:
- 从数据库中删除这个表,然后用 syncdb 命令重新创建一个新的表。
- 使用
python manage.py sql (appname)
命令打印出数据库的 SQL 语句,找到新增字段的那一行,然后手动用alter table
SQL 命令添加它。(这样你还可以为当前记录选择字段的值。) - 使用 South 工具(参考 Dominic 的回答)。