提问人:beCurious 提问时间:4/3/2017 最后编辑:beCurious 更新时间:4/3/2017 访问量:805
Django 使迁移每次都对 'auth.user' 进行更改
Django makemigrations make change for 'auth.user' every time
问:
我将系统的 django 版本从 1.6.10 升级到 1.8.16 进行测试。 在版本之前,我使用 South 进行迁移。 因此,我遵循了“https://docs.djangoproject.com/en/1.7/topics/migrations/#upgrading-from-south”此文档。
我的问题是每个makemigrations都检查相同的字段,然后制作迁移文件。
该字段是“auth”。用户的外键字段。喜欢。user = models.ForeignKey('auth.User')
这是我针对该问题的屏幕截图。
这是该外键字段的示例代码。
cancelled_by = models.ForeignKey(
'auth.User',
verbose_name=_("Cancelled by"),
related_name='project_cancel',
blank=True,
null=True
)
我该如何解决?
编辑: 这是我在所有迁移后由 makemigrations 创建的迁移文件。
class Migration(migrations.Migration):
dependencies = [
('meeting', '0003_meeting_proposal'),
]
operations = [
migrations.AlterField(
model_name='meeting',
name='manager',
field=models.ForeignKey(verbose_name='Manager', blank=True, to=settings.AUTH_USER_MODEL, null=True),
),
]
答:
0赞
morinx
4/3/2017
#1
我会先删除最近制作的迁移文件,然后再次尝试makemigration。
删除迁移文件是一种常见的解决方案,因为 Django 足够聪明,无论文件夹中发生了什么更改,都可以轻松重新创建它们。
您也可以伪造这些迁移,但我更喜欢保持我的迁移文件夹干净整洁。
评论