测试文件夹中的flask模块导入失败

时间:2014-03-29 20:59:54

标签: python flask

如何导入位于(从测试文件夹中)的模块,然后返回我的应用程序文件夹结构?

在我想要的app_test.py文件夹中

from app.models import User

正在运行

/bin/python app_test.py

我得到了

no modules named app.models

我有一个app_test.py文件,直到我做了一些改组,现在我不确定为什么我的导入在我的测试文件夹中运行测试时无效。我在我的应用程序主文件夹中进行了维护,这里的基本布局减去了多余的文件夹/文件:

/application

  /(leaving out folders bin build lib local...)
  /src
    /test
         __init__.py
         app_test.py
    /app 
         models.py
         forms.py
         __init__.py
         views.py
        /static
        /templates
        /tmp

我的导入应该是什么?我注意到mega教程只使用了test.py文件而不是文件夹。这是最好的方法,如果不是,我的测试文件夹应该放在哪里?这让我疯了。

1 个答案:

答案 0 :(得分:4)

您需要从顶部运行app_test.py(即“python test / app_test.py”)或修复app_test.py中的python路径:

import os
import sys
topdir = os.path.join(os.path.dirname(__file__), "..")
sys.path.append(topdir)