【问题标题】:Django admin tools new version model changesDjango 管理工具新版本模型更改
【发布时间】:2013-08-02 04:57:57
【问题描述】:
我将 Django admin_tools 升级到最新版本 0.5 。我正在使用 Django 1.3
现在我在进入管理页面时收到此错误:
OperationalError: (1054, "'field list' 中的未知列 'admin_tools_dashboard_preferences.dashboard_id'")
文档中没有提到解决此问题的说明。我应该在不放弃旧数据的情况下触发什么 ALTER TABLE?
PS:我不使用 South。
【问题讨论】:
标签:
python
django
django-admin-tools
【解决方案1】:
升级 django 管理工具后,我遇到了同样的问题,最终删除了表 admin_tools_dashboard_preferences 和 admin_tools_menu_bookmark 并使用 python manage.py syncdb 重新创建它们。显然,它会清除您之前设置的所有自定义参数,因此请确保您进行了备份。
【解决方案2】:
如果您比较升级前后形成的表格,那么您可以找到缺少的列及其定义。只需使用Alter table 添加即可。
alter table admin_tools_dashboard_preferences add column `dashboard_id` varchar(100) NOT NULL;
使用这个,之前的数据不仅会被保留,而且功能也会起作用。