PyCharm自动导入无法正确导入

时间:2015-12-11 15:38:13

标签: python flask pycharm

我的应用程序结构如下:

api/
|_app/
    |_ __init__.py
    |_conf/
    |_resources/
        |_ __init__.py
        |_controller.py
    |_dao/
        |_ __init__.py
        |_thing_dao.py
    |_etc...

我想在get_thing_by_id内的thing_dao.py中使用controller.py函数。在PyCharm中,我开始输入get_thing_by_id,它会提示我自动导入该函数。问题是它只是from thing_dao import get_thing_by_id但是当我尝试运行应用程序(Flask)时,我得到ImportError: No module named 'thing_dao'。我最终要做的是相对导入或从模块级from app.dao.thing_dao import get_thing_by_id开始。

我怀疑这个问题与我的项目结构有关,而不是PyCharm错误。有没有办法构建我的项目以更好地暗示PyCharm如何进口?我已经查看了自动导入和PyCharm的配置选项,他们非常渺茫,所以我怀疑我做错了什么。

1 个答案:

答案 0 :(得分:3)

我发现我的目录被标记为" Source Root"。取消标记它们使导入正常工作。