django MakeMiggration在子应用程序上抛出错误
我通过django admin startapp testing在我的应用程序“库存管理”中创建了一个应用程序 项目目录如下所示,其中商场服装是我的主要项目,测试是我的子应用程序 当我运行django MakeMiggration在子应用程序上抛出错误,django,django-migrations,django-apps,Django,Django Migrations,Django Apps,我通过django admin startapp testing在我的应用程序“库存管理”中创建了一个应用程序 项目目录如下所示,其中商场服装是我的主要项目,测试是我的子应用程序 当我运行python manage.py makemigrations 它给 Traceback (most recent call last): File "manage.py", line 21, in <module> main() File "manag
python manage.py makemigrations
它给
Traceback (most recent call last):
File "manage.py", line 21, in <module>
main()
File "manage.py", line 17, in main
execute_from_command_line(sys.argv)
File "C:\Users\mhashirhassan22\AppData\Local\Programs\Python\Python38-32\lib\site-packages\django\core\management\__init__.py", line 401, in execute_from_command_line
utility.execute()
File "C:\Users\mhashirhassan22\AppData\Local\Programs\Python\Python38-32\lib\site-packages\django\core\management\__init__.py", line 377, in execute
django.setup()
File "C:\Users\mhashirhassan22\AppData\Local\Programs\Python\Python38-32\lib\site-packages\django\__init__.py", line 24, in setup
apps.populate(settings.INSTALLED_APPS)
File "C:\Users\mhashirhassan22\AppData\Local\Programs\Python\Python38-32\lib\site-packages\django\apps\registry.py", line 91, in populate
app_config = AppConfig.create(entry)
File "C:\Users\mhashirhassan22\AppData\Local\Programs\Python\Python38-32\lib\site-packages\django\apps\config.py", line 90, in create
module = import_module(entry)
File "C:\Users\mhashirhassan22\AppData\Local\Programs\Python\Python38-32\lib\importlib\__init__.py", line 127, in import_module
return _bootstrap._gcd_import(name[level:], package, level)
File "<frozen importlib._bootstrap>", line 1014, in _gcd_import
File "<frozen importlib._bootstrap>", line 991, in _find_and_load
File "<frozen importlib._bootstrap>", line 973, in _find_and_load_unlocked
ModuleNotFoundError: No module named 'testing'
回溯(最近一次呼叫最后一次):
文件“manage.py”,第21行,在
main()
文件“manage.py”,第17行,主
从命令行(sys.argv)执行命令
文件“C:\Users\mhashirhassan22\AppData\Local\Programs\Python\Python38-32\lib\site packages\django\core\management\\ uuuuuu init\uuuuuu.py”,第401行,从命令行执行
utility.execute()
文件“C:\Users\mhashirhassan22\AppData\Local\Programs\Python\Python38-32\lib\site packages\django\core\management\\ uuu init\uuuu.py”,第377行,在execute中
django.setup()
文件“C:\Users\mhashirhassan22\AppData\Local\Programs\Python\Python38-32\lib\site packages\django\\uuuuuuu init\uuuuuuuuu.py”,第24行,在安装程序中
应用程序。填充(设置。已安装的应用程序)
文件“C:\Users\mhashirhassan22\AppData\Local\Programs\Python\Python38-32\lib\site packages\django\apps\registry.py”,第91行,填充
app_config=AppConfig.create(条目)
文件“C:\Users\mhashirhassan22\AppData\Local\Programs\Python\Python38-32\lib\site packages\django\apps\config.py”,第90行,位于create中
模块=导入模块(条目)
文件“C:\Users\mhashirhassan22\AppData\Local\Programs\Python\Python38-32\lib\importlib\\uuuuuuu init\uuuuuu.py”,第127行,在导入模块中
return _bootstrap._gcd_import(名称[级别:],包,级别)
文件“”,第1014行,在\u gcd\u导入中
文件“”,第991行,在“查找”和“加载”中
文件“”,第973行,在“查找”和“加载”中解锁
ModuleNotFoundError:没有名为“testing”的模块
您需要将“测试”应用程序提升一个级别,使其看起来像这样:
- EMPORIUM_APPAREL
-- emporium_apparel
-- inventory_management
-- testing
确保使用以下命令创建新应用:
python manage.py startapp testing
您需要将“测试”应用程序提升一个级别,使其看起来像这样:
- EMPORIUM_APPAREL
-- emporium_apparel
-- inventory_management
-- testing
确保使用以下命令创建新应用:
python manage.py startapp testing
如果应用程序是嵌套的,并且无法从Python路径导入,则您必须在
已安装的应用程序中编写完整路径,例如库存管理。在您的情况下进行测试。应用程序的名称将只是最后一部分,例如测试
。在默认表名和迁移中使用。它类似于已安装的应用程序中的“django.contrib.admin”,但短应用程序名为“admin”。该名称在项目中必须是唯一的
“测试”这个名字似乎很笼统,这可能是个问题。如果您遇到与具有名为“testing”的应用程序的另一个包的名称冲突,您可以通过项目的高级配置以另一个名称修复它,而无需更改任何应用程序中的任何内容
Django更一般,没有“子应用程序”的概念。任何应用程序都可以依赖于另一个应用程序,无论它是否在其目录中。如果某个应用程序是嵌套的,并且无法从Python路径导入,则必须在已安装的应用程序中编写完整路径,例如库存管理。在您的情况下进行测试。应用程序的名称将只是最后一部分,例如测试
。在默认表名和迁移中使用。它类似于已安装的应用程序中的“django.contrib.admin”,但短应用程序名为“admin”。该名称在项目中必须是唯一的
“测试”这个名字似乎很笼统,这可能是个问题。如果您遇到与具有名为“testing”的应用程序的另一个包的名称冲突,您可以通过项目的高级配置以另一个名称修复它,而无需更改任何应用程序中的任何内容
Django更一般,没有“子应用程序”的概念。任何应用程序都可以依赖于另一个应用程序,无论它是否在其目录中。我不能在Django中创建子应用程序吗?您不能降低那么多级别-您有您的项目,该项目中有应用程序。您可以降低任意级别。软件自动化项目可以包含一个名为project_management的应用程序,该应用程序还可以包含scrum和看板等“子应用程序”。所以它有时会有帮助@hynekcer更准确地解释了django在这个问题上的立场。我可以用django制作一个子应用程序吗?你不能下那么多级别-你有你的项目,项目中有应用程序。你可以下任意多个级别。软件自动化项目可以包含一个名为project_management的应用程序,该应用程序还可以包含scrum和看板等“子应用程序”。所以它有时会有帮助@hynekcer更准确地解释了django在这件事上的立场库存管理。测试现在工作得很好。在这里问之前我试过,但我不知道我可能错过了什么,谢谢。。答案(Y)inventory\u management解释得很好。测试现在运行得很好。在这里问之前我试过,但我不知道我可能错过了什么,谢谢。。解释清楚的答案(Y)