我在models.py文件中添加和删除了字段,然后运行manage.py syncdb。通常我必须退出shell并在syncdb执行任何操作之前重新启动它。然后即使在那之后,我在尝试访问管理页面时遇到错误,似乎我添加的某些新字段仍未显示在模型中:
Caught an exception while rendering: no such column: mySite_book.Title
答案 0 :(得分:9)
Django不为您执行数据库迁移,即,如果添加新字段,Django将不会修改您的数据库架构。
你可以:
答案 1 :(得分:4)
对我来说,(只要您使用测试数据执行此操作,而不是在生产环境中执行此操作),只需吹掉test.db并执行新的./manage.py syncdb即可。只是值得深思... ...
答案 2 :(得分:2)
为了扩展@ Barthelemy的答案,有几个Django migration tools: