Flask 应用程序结构让我头疼模块

Flask app structure is giving me module headaches

我是 Python 和 Flask 的新手,所以我可能完全不了解应用程序的组织结构。目录结构如下所示:

  + venv
    + bin
    + include
    + lib
    + myapp
      - __init__.py
      + config
        - __init__.py
        - development.py
        - production.py
      + templates
        - layout.html
        (more html files here and directories)
      + db
        - development.db
        - production.db
      + static
        (all my css/js/etc)
      + views
        - __init__.py
        - main.py
      + models
        - __init__.py
        - game.py

到目前为止一切正常,直到我开始研究模型。我正在尝试 import myapp.models.game 但由于某种原因它不起作用。相反,它抱怨说 myapp 模块不存在。

为什么会这样,我错过了什么?我应该以不同的方式组织文件吗?

如果您已经在 myapp 中,请尝试只导入 models.game。另外,请确保每个目录中确实有一个 __init__.py,因为没有它您将无法导入 python 模块。