Использование параметра `create_app` внутри FlaskGroup - PullRequest
0 голосов
/ 09 мая 2018

У меня есть приложение фляги, которое использует шаблон фабрики приложений для создания экземпляра приложения фляги. Я пытаюсь интегрировать командную строку Flask CLI в мое приложение фляги.

Может ли кто-нибудь помочь мне понять использование параметра create_app внутри FlaskGroup вызова.

Ниже приведен мой фрагмент кода.

from project import create_app, db
from flask.cli import FlaskGroup
app = create_app()
cli = FlaskGroup(create_app=create_app)

Если бы я использовал как обычное приложение фляги, то мне не пришлось бы использовать параметр create_app, в этом случае мой фрагмент кода выглядит как

from project import app, db
from flask.cli import FlaskGroup
cli = FlaskGroup(app)

1 Ответ

0 голосов
/ 09 мая 2018

Обновление до Flask 1.0. Команда flask теперь понимает, как работать с заводскими функциями.

FLASK_APP=myapp
flask run

Flask импортирует myapp, находит функцию create_app и вызывает ее для получения объекта приложения. См. документы для получения дополнительной информации.


Предполагая, что вам действительно нужен пользовательский объект cli (скорее всего, нет), тогда вы используете его правильно. Вы передаете фабричную функцию группе, и она будет вызывать ее, когда потребуется объект приложения.

...