2
我有兩個文件在同一文件夾(應用程序)feed
。django導入錯誤
models.py
from django.db import models
from .managers import FeedManager
class Feed(models.Model):
#fields for my model
managers.py
from django.db import models
from .models import Feed
class FeedManager(models.Manager):
def get_queryset(self, *args, **kwargs):
return super(FeedManager, self).get_queryset(*args, **kwargs)
我收到以下錯誤,當我運行服務器:
Unhandled exception in thread started by <function wrapper at 0x04064370>
Traceback (most recent call last):
File "C:\Users\Sumit\Desktop\django\venv\lib\site-packages\django\utils\autoreload.py", line 229, in wrapper
fn(*args, **kwargs)
File "C:\Users\Sumit\Desktop\django\venv\lib\site-packages\django\core\management\commands\runserver.py", line 107, in inner_run
autoreload.raise_last_exception()
File "C:\Users\Sumit\Desktop\django\venv\lib\site-packages\django\utils\autoreload.py", line 252, in raise_last_exception
six.reraise(*_exception)
File "C:\Users\Sumit\Desktop\django\venv\lib\site-packages\django\utils\autoreload.py", line 229, in wrapper
fn(*args, **kwargs)
File "C:\Users\Sumit\Desktop\django\venv\lib\site-packages\django\__init__.py", line 18, in setup
apps.populate(settings.INSTALLED_APPS)
File "C:\Users\Sumit\Desktop\django\venv\lib\site-packages\django\apps\registry.py", line 108, in populate
app_config.import_models(all_models)
File "C:\Users\Sumit\Desktop\django\venv\lib\site-packages\django\apps\config.py", line 198, in import_models
self.models_module = import_module(models_module_name)
File "C:\Python27\Lib\importlib\__init__.py", line 37, in import_module
__import__(name)
File "C:\Users\Sumit\Desktop\django\network\feed\models.py", line 7, in <module>
from .managers import FeedManager
File "C:\Users\Sumit\Desktop\django\network\feed\managers.py", line 3, in <module>
from .models import Feed
ImportError: cannot import name Feed
爲什麼會出現這種錯誤,以及如何我解決這個問題嗎?
您正面臨循環導入問題。從'managers.py'文件的頂部刪除'.models import Feed',你就會很好。無論何時您需要該模型,都可以將其導入管理器函數本身。 –