2013-10-08 1 views
0

Используя этот Flask bootstrap project, я хотел бы задать некоторые параметры, которые должны быть определены при создании объекта Колба (как template_folder, static_url_path и static_path)Можно ли изменить `template_folder` после инициализации?

Вот начальная часть кода:

app_name = app_name or __name__ 
app = Flask(app_name) 

config = config_str_to_obj(config) 
configure_app(app, config) 
configure_logger(app, config) 
configure_blueprints(app, blueprints or config.BLUEPRINTS) 
configure_error_handlers(app) 
configure_database(app) 
configure_context_processors(app) 
configure_template_filters(app) 
configure_extensions(app) 
configure_before_request(app) 
configure_views(app) 

return app 

Но нет способа указать параметры, указанные ранее.

Как это сделать, не записывая их в этом методе (например, используя объект Config).

ответ

2

МОЖЕТ быть в состоянии изменить некоторые из них, но Flask не предназначен для изменения их в приложении после создания приложения. Просто посмотрим на некоторые из кода, например, static route is created in the constructor of the Flask application.

Итак, вам нужно будет установить эти параметры во время сборки. Хорошей новостью является то, что ваша конфигурация обычно выполняется так, что ее можно легко загрузить (например, в модуле python). Вы должны иметь возможность изменить свой бутстрап на:

app_name = app_name or __name__ 

config = config_str_to_obj(config) 
app = Flask(app_name, static_url_path=config.SOME_CONFIGURATION_NAME) 

configure_app(app, config) 
... 
Смежные вопросы