获取SOUTH和django迁移错误
我在django中迁移Sentry应用程序时出错。我正在使用mysql获取SOUTH和django迁移错误,django,django-south,django-syncdb,Django,Django South,Django Syncdb,我在django中迁移Sentry应用程序时出错。我正在使用mysql ! Since you have a database that does not support running ! schema-altering statements in transactions, we have had ! to leave it in an interim state between migrations. ! You *might* be able to recover with:
! Since you have a database that does not support running
! schema-altering statements in transactions, we have had
! to leave it in an interim state between migrations.
! You *might* be able to recover with: = DROP TABLE `sentry_groupedmessage` CASCADE; []
= DROP TABLE `sentry_message` CASCADE; []
我该怎么办您的问题是迁移失败,MySQL不支持事务,所以South不知道表处于哪个状态 从这一点上恢复它的唯一方法是:
- 检查表并检查它们处于迁移的哪个状态(哪些列已更改等)
- 备份两个表(转储它们)
- 删除表
- 使用migrate命令重新创建表
- 如果迁移尚未成功,请使用south转到表与转储数据的模式匹配的状态
- 导入您的转储文件
- 再次迁移
content\u type\u id
的任何IntegrityError
,请同时删除专门为应用程序模型创建的权限。错误类似于以下情况:
IntegrityError:(1062,“重复输入'209-view'用于键'content\u type\u id'”)
在这种情况下,请从表auth_permission中删除这些权限。您可以执行类似于的搜索模型名称以查找所有权限(查看、添加、更改、删除)
Select*from auth\u权限,其中代码名类似“%”
上面的命令将为您的模型获得所有权限,您可以获取他们的ID并删除(或简单地编写一个连接)。按照说明操作?您的意思是MySQL不支持他所说的,MySQL有那么糟糕吗?我不能在Django的小项目中使用它