Django makemigrations 每次都会更改 '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' 外键字段。像 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),
),
]
我会先删除最近制作的迁移文件,然后再尝试 makemigration。
删除迁移文件是一种常见的解决方案,因为 Django 足够聪明,可以轻松地重新创建它们,而不管您的文件夹中发生了什么变化。
你也可以伪造这些迁移,但我更喜欢保持我的迁移文件夹干净整洁。
我将系统的django 版本从1.6.10 升级到1.8.16 进行测试。 在之前的版本中,我使用 South 进行迁移。 所以,我遵循了“https://docs.djangoproject.com/en/1.7/topics/migrations/#upgrading-from-south”这个文档。
我的问题是每次 makemigrations 都检查相同的字段,然后制作迁移文件。
该字段是 'auth.User' 外键字段。像 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),
),
]
我会先删除最近制作的迁移文件,然后再尝试 makemigration。
删除迁移文件是一种常见的解决方案,因为 Django 足够聪明,可以轻松地重新创建它们,而不管您的文件夹中发生了什么变化。
你也可以伪造这些迁移,但我更喜欢保持我的迁移文件夹干净整洁。