我刚刚升级到Django 1.7,我的一些迁移存在一些问题。在升级之前,我使用South来处理数据迁移,我使用的一个迁移是改变auth_permissions中name字段的字段长度。
如何使用django迁移> = 1.7?
编写相同的迁移答案 0 :(得分:1)
是否还需要更改?该字段的长度在很长一段时间内都是一个已知问题,但错误跟踪器中的最新更新表明它是quintupled in length。
如果您仍希望它更长,您可能需要this。
编辑:现在就放弃吧。编写存储在应用程序A中但应用于应用程序B的迁移涉及比我有时间更深入的编辑。
建议路线:
在您自己的某个应用中的迁移中使用RunSQL手动调整字段。
Fork Django 1.7.8,添加注释中描述的身份验证迁移,针对该github仓库进行pip安装。
使用Django 1.8,其中this change is standard。
答案 1 :(得分:0)
有权限名称长度的问题 使用Django 1.8 Python 3.4.4 (这些是MySQL 5.6+使用的最新版本) 更改了base \ schema.py
_alter_field(...)中的
# ********* altered - start
fragment, other_actions = self._alter_column_type_sql(table=model._meta.db_table, old_field=old_field, new_field=new_field.column, new_type=new_type)
# ******** end
将定义更改为:
def _alter_column_type_sql(self, table, old_column, column, type):
那就是它。所有迁移工作