【发布时间】:2018-07-14 20:24:43
【问题描述】:
在我的应用程序的“views.py”文件中,我有以下导入:
from .models import City
在 localhost 上启动时,导入和应用程序工作正常。
在与“views.py”和“models.py”相同的文件夹中,我创建了另一个文件“database_csv_imports.py”,用于从 .csv 文件进行一次性数据库导入。
如果我使用与上面相同的行将City 模型导入“database_csv_imports.py”文件,我会得到一个错误:
Traceback (most recent call last):
File "database_csv_imports.py", line 3, in <module>
from .models import City
SystemError: Parent module '' not loaded, cannot perform relative import
所以我已将相对导入更改为绝对导入:
from models import City
然而,这会引发另一个错误:
Traceback (most recent call last):
File "database_csv_imports.py", line 3, in <module>
from models import City
File "/home/bart/python_projects/javascript/models.py", line 19, in <module>
class Listing(models.Model):
File "/home/bart/python_projects/testenv/lib/python3.5/site-packages/django/db/models/base.py", line 100, in __new__
app_config = apps.get_containing_app_config(module)
File "/home/bart/python_projects/testenv/lib/python3.5/site-packages/django/apps/registry.py", line 244, in get_containing_app_config
self.check_apps_ready()
File "/home/bart/python_projects/testenv/lib/python3.5/site-packages/django/apps/registry.py", line 127, in check_apps_ready
raise AppRegistryNotReady("Apps aren't loaded yet.")
django.core.exceptions.AppRegistryNotReady: Apps aren't loaded yet.
我查看了类似的 SO 问题,但没有找到解决方案:
我在 virtualenv 中运行所有脚本,我的应用程序安装在“settings.py”中,SECRET_KEY 不为空,makemigrations 和migrate 都已应用。我还认为这里发布的解决方案:django.core.exceptions.AppRegistryNotReady: Apps aren't loaded yet. file init 在这种情况下可能有点矫枉过正。
有人可以帮我解决导入错误吗?
【问题讨论】: