python flask中config配置

首先声明版权,此篇文章是转载CSDN博主「iteye_20817」的,但我增加了自己的一些想法和注释,讲解地比较清楚,对Python小白而言会更加友好点。

方法一、直接配置

app.config['HOST']='xxx.a.com'      # 实质上是通过使用下标的方式访问字典的“值”
print app.config.get('HOST')        # flask.config.get('HOST')可获得配置 键 HOST 的对应值,类似于字典对象的 get() 方法

方法二、通过环境变量加载配置

使用环境变量加载。这种方法依然支持silent参数,获得路径后其实
还是使用from_pyfile的方式加载的。

export MyAppConfig=/path/to/settings.cfg  
 
app.config.from_envvar('MyAppConfig')

这样将会加载环境变量指向的配置文件,并加载

方法三、通过对象加载

class Config(object):
    DEBUG = False
    TESTING = False
    DATABASE_URI = 'sqlite://:memory:'
 
class ProductionConfig(Config):
    DATABASE_URI = 'mysql://user@localhost/foo'
 
class DevelopmentConfig(Config):
    DEBUG = True
 
class TestingConfig(Config):
    TESTING = True
 
from flask import Flask
app = Flask(__name__)
 
app.config.from_object(ProductionConfig)
print app.config.get('DATABASE_URI') # mysql://user@localhost/foo

或者:

from flask import Flask
import default_config
app = Flask(__name__)
 
app.config.from_object(default_config) # 这里 defualt_config是一个对象
print app.config.get('HOST')

方法四、通过配置文件

直接传入名字就行了
别的后缀的也可以,不局限于.py的

app.config.from_pyfile('default_config.py',silent=True)      # 这里defualt_config.py是文件
 #  默认为 silent=False ,即当配置文件不存在的时候抛出异常,
 #  使用silent=True的时候只是会返回False,但是不抛出异常

# default_config.py
HOST = 'localhost'
PORT = 5000
DEBUG = True
 
# 使用配置
print app.config['HOST']

或者

# 也可以在引用之后直接传入对象
import default_config
app.config.from_object(default_config)

–end

原文链接:https://blog.csdn.net/iteye_20817/article/details/82448521

发布了2 篇原创文章 · 获赞 3 · 访问量 64

猜你喜欢

转载自blog.csdn.net/qq_44447544/article/details/104466255