python - 模型导入错误

标签 python google-app-engine

尝试将模型导入我的 Google App Engine 应用时遇到以下错误:

Traceback (most recent call last):
  File "/base/data/home/runtimes/python27/python27_lib/versions/1/google/appengine/runtime/wsgi.py", line 240, in Handle
handler = _config_handle.add_wsgi_middleware(self._LoadHandler())
  File "/base/data/home/runtimes/python27/python27_lib/versions/1/google/appengine/runtime/wsgi.py", line 299, in _LoadHandler
handler, path, err = LoadObject(self._handler)
  File "/base/data/home/runtimes/python27/python27_lib/versions/1/google/appengine/runtime/wsgi.py", line 85, in LoadObject
obj = __import__(path[0])
  File "/base/data/home/apps/app/0-1.405524594589080344/main.py", line 6, in <module>
from BaseHandler import BaseHandler
  File "/base/data/home/apps/app/0-1.405524594589080344/BaseHandler.py", line 26, in <module>
from user.database import u_db
  File "/base/data/home/apps/app/0-1.405524594589080344/user/database/u_db.py", line 12, in <module>
from clubs.database import fed_db, league_db, club_db
  File "/base/data/home/apps/app/0-1.405524594589080344/clubs/database/fed_db.py", line 6, in <module>
from events.database import e_db
  File "/base/data/home/apps/app/0-1.405524594589080344/events/database/e_db.py", line 7, in <module>
from user.database import u_db
ImportError: cannot import name u_db

我重命名了模型文件及其容器文件夹,可以看到这与 Path 有关。

当我陷入困境时,我真的很感激能帮助解决这个问题。

谢谢。

最佳答案

您的模型中有循环依赖项,请在回溯中查看这些片段:

  File "/base/data/home/apps/app/0-1.405524594589080344/BaseHandler.py", line 26, in <module>
from user.database import u_db

...

  File "/base/data/home/apps/app/0-1.405524594589080344/events/database/e_db.py", line 7, in <module>
from user.database import u_db

你需要解决这个问题。通常,只需将 import 语句移至实际需要的函数内(而不是仅移至文件顶部)即可完成。但并非总是如此。

关于python - 模型导入错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47301669/

相关文章:

python - Django通过关系计算外键

python - Django:如何使用 ModelFormSet 通过 request.user 过滤外键选择

python - GAE-- 访问模型元数据

python - 指示 GET 响应已通过 Python AppEngine 完成

python - Twitter 用户关注者的随机页面

python - 无法在centos上安装Pillow

python - 为arm-none-linux-gnueabi-g++编译python以获得LIB的替代方法

python - Google App Engine 投影查询

javascript - 如何在文件上传完成时调用 JS 回调?

python - 无法在 Google App Engine 上使用 jinja2 PackageLoader