Метод from_object
Метод from_object применяется к объекту конфигурации приложения
Flask. Первым параметром передаётся объект, из атрибутов которого
загружаются настройки. Вторым необязательным параметром можно указать
префикс имён атрибутов. Метод читает все атрибуты, имена которых
состоят только из заглавных букв, и записывает их в конфигурацию.
Синтаксис
app.config.from_object(obj, [silent])
Пример
Давайте создадим класс с настройками и загрузим их в приложение:
from flask import Flask
class Config:
SECRET_KEY = 'abcde'
DEBUG = True
app = Flask(__name__)
app.config.from_object(Config)
@app.route('/')
def index():
return app.config['SECRET_KEY']
Результат выполнения кода для адреса /:
abcde
Пример
Давайте загрузим настройки из отдельного модуля. Создадим файл
settings.py с классом конфигурации:
class Config:
SECRET_KEY = 'abcde'
DEBUG = True
Теперь импортируем этот класс и передадим его в метод
from_object:
from flask import Flask
from settings import Config
app = Flask(__name__)
app.config.from_object(Config)
@app.route('/')
def index():
return str(app.config['DEBUG'])
Результат выполнения кода для адреса /:
True
Пример
Давайте загрузим сразу несколько классов конфигурации. Например, базовый класс и класс для разработки:
from flask import Flask
class BaseConfig:
SECRET_KEY = 'abcde'
class DevConfig(BaseConfig):
DEBUG = True
app = Flask(__name__)
app.config.from_object(BaseConfig)
app.config.from_object(DevConfig)
@app.route('/')
def index():
return app.config['SECRET_KEY']
Результат выполнения кода для адреса /:
abcde
Смотрите также
-
класс
Config,
который хранит настройки приложения -
метод
from_pyfile,
который загружает настройки из Python-файла -
метод
from_mapping,
который загружает настройки из словаря -
метод
from_envvar,
который загружает настройки из переменной окружения