【发布时间】:2021-07-30 15:36:22
【问题描述】:
我之前遇到过这个错误,但在瞬间,它不知何故被修复了,但现在它似乎爬回来了,不知道问题出在哪里,提前谢谢
目录结构
food_deliveryapp
|- manage.py
|- food_deliveryapp
|- customers
|- entries
|- restaurants
| |- __init__.py
| |- admin.py
| |- apps.py
| |- models.py
| |- City
| |- Restraunts
| |- views.py
| |- tests.py
| |- migrations
|
|- static
|- templates
我的模块和模型已就位,但仍然出现此错误
Traceback (most recent call last):
File "manage.py", line 22, in <module>
main()
File "manage.py", line 18, in main
execute_from_command_line(sys.argv)
File "C:\Users\atif\PycharmProjects\my_proj_basic\virtual-env\lib\site-packages\django\core\management\__init__.py", line 419, in execute_from_command_line
utility.execute()
File "C:\Users\atif\PycharmProjects\my_proj_basic\virtual-env\lib\site-packages\django\core\management\__init__.py", line 395, in execute
django.setup()
File "C:\Users\atif\PycharmProjects\my_proj_basic\virtual-env\lib\site-packages\django\__init__.py", line 24, in setup
apps.populate(settings.INSTALLED_APPS)
File "C:\Users\atif\PycharmProjects\my_proj_basic\virtual-env\lib\site-packages\django\apps\registry.py", line 114, in populate
app_config.import_models()
File "C:\Users\atif\PycharmProjects\my_proj_basic\virtual-env\lib\site-packages\django\apps\config.py", line 301, in import_models
self.models_module = import_module(models_module_name)
File "C:\Users\atif\AppData\Local\Programs\Python\Python37\lib\importlib\__init__.py", line 127, in import_module
return _bootstrap._gcd_import(name[level:], package, level)
File "<frozen importlib._bootstrap>", line 1006, in _gcd_import
File "<frozen importlib._bootstrap>", line 983, in _find_and_load
File "<frozen importlib._bootstrap>", line 967, in _find_and_load_unlocked
File "<frozen importlib._bootstrap>", line 677, in _load_unlocked
File "<frozen importlib._bootstrap_external>", line 728, in exec_module
File "<frozen importlib._bootstrap>", line 219, in _call_with_frames_removed
File "C:\Users\atif\PycharmProjects\my_proj_basic\food_deliveryapp\menus\models.py", line 3, in <module>
from restaurants.models import Restraunts
File "C:\Users\atif\PycharmProjects\my_proj_basic\food_deliveryapp\restaurants\models.py", line 4, in <module>
from customers.models import *
File "C:\Users\atif\PycharmProjects\my_proj_basic\food_deliveryapp\customers\models.py", line 1, in <module>
from restaurants.models import City
ImportError: cannot import name 'City' from 'restaurants.models' (C:\Users\atif\PycharmProjects\my_proj_basic\food_deliveryapp\restaurants\models.py)
【问题讨论】:
-
这是一个循环导入。餐厅模型正在导入正在导入餐厅模型的客户模型...
-
正如@AKX 所说,这看起来很像循环导入。如果您在
customers\models.py中包含代码,那么也许有一种方法可以在不导入模型并导致问题的情况下做到这一点。 -
我该如何解决这个问题?我听说过循环导入
-
link - 此链接说明如何避免循环导入。看看是否有帮助。否则,发布您的 models.py 以提供更具体的建议。
标签: django django-models django-views