我正在使用 Python 3.4.3 和 Django 1.8 构建一个全新的 Web 项目,目前还没有进行任何迁移。对于该项目,我正在一个名为 users 的应用程序中创建一个继承自 AbstractBaseUser 的自定义用户。在创建任何迁移之前,我还正确地将 AUTH_USER_MODEL 引用到 settings.py 中的自定义用户,如 doc 中所述.
但是,当我尝试运行 python manage.py makemigrations users 或 python manage.py migrate 时,控制台报告 ValueError: Dependency on unknown app:用户。
我非常确定我的自定义用户模型代码是正确的,因为我遵循了文档的示例代码,还因为,当我注释掉 AUTH_USER_MODEL 时,除了 Django 创建的表之外,其他一切都工作正常对于默认用户模型,这是预期的。
在documentation据说:
you must ensure that the model referenced by AUTH_USER_MODEL is created in the first migration of its app (usually called 0001_initial); otherwise, you will have dependency issues.
我不是很清楚这到底是什么意思。这是否意味着我必须为我的 users 应用程序手动创建迁移?如果是这样,我应该怎么做?
我非常感谢任何建议或对可靠来源的重定向!非常感谢您!
请您参考如下方法:
所以在尝试了各种方法解决问题后,发现问题出在一个偶然的错误上。在 users 目录中,我删除了 migrations 目录中的所有文件,包括它的 __init__.py。如果没有__init__.py文件,将抛出ValueError。如果您手动添加 __init__.py 文件,一切都会正常运行。
遇到同样问题的 friend ,祝你好运!
