如何在flask app中使用绝对路径?

时间:2016-12-06 01:40:06

标签: python flask

我试图学习python并且似乎无法理解python如何处理导入。我正在尝试使用Flask应用程序,我可以使用相对网址运行它,但我想使用绝对网址作为练习来了解导入。

我已将PYTHONPATH设置到我项目中的app目录中,但似乎没有做任何事情。

这是我的设置。我左边有app/__init.py,右边有app/mod_users/controllers.py。我的run.py是一个包含一行from app import app的文件。

正如您在第17行所看到的,它不像绝对导入。这可能是因为我的app变量名为app,导入路径也是如此?

enter image description here

1 个答案:

答案 0 :(得分:0)

经过一些实验,感谢@downshift,我想我已经弄明白了。 4个步骤让我说出我想要的状态。

  1. 将此行添加到app/__init.py

    的顶部
    from __future__ import absolute_import
    
  2. export PYTHONPATH=./

  3. export FLASK_APP=app(和FLASK_DEBUG=1进行实时重新加载)

  4. run.py更改为

    from app import app
    app.run()
    
  5. 如果我执行上述操作,我可以使用flask runpython run.py,它们的工作方式相同。呜呜!