python—Flask学习5------flask配置文件

一、为什么要有配置文件
我们的项目需要设定多个配置 ,例如开发、测试和生产环境需要使用不同的数据库,这样才不会相互影响。启动文件中的app.config对象就是启动文件的一种。

二、如何建立配置文件
1.在项目中新建config.py文件。
2.在config.py文件中输入以下代码:

`import os
basedir = os.path.abspath(os.path.dirname(__file__))
class Config:
SECRET_KEY = os.environ.get('SECRET_KEY') or 'hard to guess string'
MAIL_SERVER = os.environ.get('MAIL_SERVER', 'smtp.googlemail.com')
MAIL_PORT = int(os.environ.get('MAIL_PORT', '587'))
MAIL_USE_TLS = os.environ.get('MAIL_USE_TLS', 'true').lower() in \
['true', 'on', '1']
MAIL_USERNAME = os.environ.get('MAIL_USERNAME')
MAIL_PASSWORD = os.environ.get('MAIL_PASSWORD')
FLASKY_MAIL_SUBJECT_PREFIX = '[Flasky]'
FLASKY_MAIL_SENDER = 'Flasky Admin <[email protected]>'
FLASKY_ADMIN = os.environ.get('FLASKY_ADMIN')
SQLALCHEMY_TRACK_MODIFICATIONS = False
@staticmethod
def init_app(app):
pass
class DevelopmentConfig(Config):
DEBUG = True
SQLALCHEMY_DATABASE_URI = os.environ.get('DEV_DATABASE_URL') or \
'sqlite:///' + os.path.join(basedir, 'data-dev.sqlite'
`
class TestingConfig(Config):
TESTING = True
SQLALCHEMY_DATABASE_URI = os.environ.get('TEST_DATABASE_URL') or \
'sqlite://'
class ProductionConfig(Config):
SQLALCHEMY_DATABASE_URI = os.environ.get('DATABASE_URL') or \
'sqlite:///' + os.path.join(basedir, 'data.sqlite')
config = {
'development': DevelopmentConfig,
'testing': TestingConfig,
'production': ProductionConfig,
'default': DevelopmentConfig
}

三、以上代码的作用:
1.导入os模块
2.定义basedir变量,传入配置文件
3.定义配置类Config
4.在类中定义参数
SELECT_KEY:为文件加密
MAIL_SERVER:邮箱的服务器,指定使用哪种邮箱
MAIL_PORT:指定使用邮箱的端口,不同邮箱的端口不同
MAIL_USE_TLS:指定邮箱的协议
MAIL_USERNAME:你的邮箱账号
MAIL_PASSWORD:你的邮箱密码
FLASKY_MAIL_SUBJECT_PREFIX:
flask账户名称
FLASK_MAIL_SENDER:
flask邮件发送者的名称
FLASK_ADMIN:
flask管理员权限
SQLALCHEMY_TRACK_MODIFICARTIONS:
配置数据库

5.定义静态方法
6.配置开发环境的数据库
7.配置测试类的数据库
8.配置生产环境数据库
9.基类Config中包含通用配置,各个子类分别定义专用的配置。若需要,可添加其他的配置类。

猜你喜欢

转载自blog.csdn.net/qq_43709590/article/details/86495840