我有一个Django项目本身没有应用程序。所有应用程序都通过pyvenv环境中安装的egg依赖项进入 这些应用程序有模型,但没有“manage.py”#39;或数据库设置(只是一个简单的应用程序)。
我现在正在努力为鸡蛋中的应用程序创建迁移。当我执行' python manage.py makemigrations'我发现没有检测到任何变化'即使我之前擦过了数据库。然后,当我运行服务器时,它告诉我有来自Django核心模块的13个未应用的迁移,例如' auth',' sessions'我可以运行它们运行' python manage.py migrate'。
我尝试创建一个虚拟应用程序,将其添加到INSTALLED_APPS并添加一个模型从一个鸡蛋导入到该应用程序的models.py.还没有工作,仍然没有检测到任何变化'。
那些鸡蛋依赖项是我创建的应用程序。是鸡蛋'这里格式错误?有哪些替代方案?我可以告诉他们制作素材吗?模块在哪里看?还有什么可能的原因?
答案 0 :(得分:0)
这是因为Django在寻找迁移时正在寻找目录。鸡蛋不是目录,因此不会找到作为鸡蛋安装的应用程序的迁移。
如果你告诉makemigrations
为你做这件事,你会看到像(在Windows上)的错误:
FileNotFoundError: [WinError 3] The system cannot find the path specified: C:\\path\\to\\app_egg.egg\\app\\migrations
我认为最好的解决方案是不要使用鸡蛋。