将Flask环境设置为默认的开发模式?

2024-05-13 05:30:11 发布

您现在位置:Python中文网/ 问答频道 /正文

每次启动烧瓶应用程序时,环境变量都设置为production。我想让它默认设置为开发模式。否则每次我启动我的应用程序我都得运行。。

export FLASK_ENV=development

如何在每次启动时将环境的默认值设置为“开发”?

编辑:我在一个虚拟环境中对一个树莓皮烧瓶。


Tags: env应用程序编辑flask环境烧瓶虚拟环境模式
3条回答

您可以这样做,除非您指定环境,否则flask将假定production.

export FLASK_ENV=development
flask run

您可以编辑主烧瓶应用程序文件并添加以下行:

if __name__ == '__main__':
    app.run(debug=True)

使用这种方法,您必须使用Python解释器来运行flask应用程序,例如=>;python app.py

最佳实践:

  1. 在工作环境中安装python-dotenv包=>;pip install python-dotenv
  2. 创建一个名为.env的文件,将您的环境变量放入其中,对于您的情况是FLASK_ENV=development
  3. 然后将此代码添加到您的config.py或在Flask主应用程序之前加载的某个文件中

    from dotenv import load_dotenv
    dotenv_path = join(dirname(__file__), '.env')  # Path to .env file
    load_dotenv(dotenv_path)
    

Note that: If you are using flask command to run your application, you don't need to do the third step, flask will find .env files in the project directory by itself.

使用此方法,它将只为已将此代码添加到的项目设置环境变量。。

您可以将导出行添加到~/.bashrc。每次启动一个新的shell时,导出行将自动执行一次,因此FLASK_ENV的默认值将始终为development。

echo "export FLASK_ENV=development" >> ~/.bashrc
source ~/.bashrc

从bash手册页:

When an interactive shell that is not a login shell is started, bash reads and executes commands from ~/.bashrc

相关问题 更多 >