利用Flask搭建一个简易的博客网站(3)

manage.py 和 configs.py 的应用

我们知道当我们创建好 app文件,即完成一个可以创建新的flask对象的函数时,在命令行执行这个函数时,就会进入flask服务器。

我们可以新建一个manage的模块来方便我们调试服务器,即在manage中来启用这个create_app的函数,这样我们可以自定义多种启动服务器的方式,例如开发模式或者测试模式。

在同目录下新建configs.py

具体的设置看源代码就可以了,主要包含SECRET_KEY, FLASK_ENV 和一些MAIL_SERVER等的设置。我们把这些配置定义在具体的类下面, 这样当这个类名通过最后设置的字典简写的方式传入create_app中, app.config.from_object(configs.get(config)) 让类里的配置直接传入flask对象的配置。

关于一些不能被公开的配置,例如SECRETE_KEY, MAIL_PASSWORD等,我们可以用到一个dotenv插件来方便我们配置。

查一下如何import dotenv,我们在当前文件夹新建.env 和 .flaskenv。 .env可以用来配置一些涉密的配置信息,如我上述。.flaskenv是用来配置一些关于flask服务器的配置,是可公开的。这样我们设置好了之后,系统就会自动添加这些配置信息,我们在configs.py就可以用到例如MAIL_PASSWORD = os.getenv('MAIL_PASSWORD') 来得到我们想要的配置信息。

记住,必须在manage.py或者configs.py中启用dotenv才可以使用

from dotenv import load_dotenv load_dotenv(override=True)

override确认了env中会override系统中的配置信息。


本博客所有文章除特别声明外,均采用 CC BY-SA 4.0 协议 ,转载请注明出处!