一、问题
报错HINT: Add or change a related_name argument to the definition for 'users.User.user_permissions'
看到这样的提示时,通常意味着在你的项目中存在两个模型(或多个)都有相同名称的反向关系(reverse relation),这导致 Django 在内部处理这些关系时产生冲突。在你的情况下,冲突发生在 users.User.user_permissions
和 auth.User.user_permissions
上,这通常是因为你自定义了 User
模型并且继承了 Django 的 AbstractUser
(或类似地,通过其他方式扩展了 auth.User
),但同时又保留了默认的 auth.User
模型在项目中
如果你自定义了 User
模型并希望完全替代 Django 自带的 auth.User
,你需要在你的 settings.py 文件中设置 AUTH_USER_MODEL
为你的自定义 User
模型,
即自定义模型类后不能直接迁移
二、解决
将AUTH_USER_MODEL = "auth.User"复制到dev.py(settings.py)配置文件中,并将auth改为users
再次报错:ValueError: Dependency on app with no migrations: users(改完再执行迁移)
解决:执行python managy.py makemigrations生成迁移文件(admin、auth等子应用已生成)
学习导航:http://www.xqnav.top