РЕПЕТИТОР математика физика информатика
Для школьников и студентов. Подтягивание пробелов. ЦЭ, ЦТ, ОГЭ, ЕГЭ.
Идет набор на ЛЕТО. Жмите для подробностей:)
626 of 643 menu

Класс AppGroup

Класс AppGroup наследуется от класса Group библиотеки Click и используется для создания групп команд. Он применяется при построении интерфейса командной строки. Основное отличие от обычной группы Click заключается в том, что AppGroup автоматически передаёт объект приложения в контекст команды, что позволяет получать доступ к current_app внутри команд.

Синтаксис

from flask.cli import AppGroup AppGroup(name=None, commands=None, **attrs)

Параметр name задаёт имя группы, которое будет отображаться в справке. Параметр commands принимает словарь или список команд для добавления в группу. Дополнительные атрибуты передаются в родительский класс Group.

Пример

Давайте создадим группу команд и добавим в неё простую команду:

from flask import Flask from flask.cli import AppGroup app = Flask(__name__) user_cli = AppGroup('user') @user_cli.command('create') def create_user(): print('User created') app.cli.add_command(user_cli)

Результат выполнения команды flask user create:

User created

Пример

Давайте добавим команду с аргументом и получим доступ к приложению:

from flask import Flask, current_app from flask.cli import AppGroup import click app = Flask(__name__) user_cli = AppGroup('user') @user_cli.command('greet') @click.argument('name') def greet_user(name): print(f'Hello, {name} from {current_app.name}') app.cli.add_command(user_cli)

Результат выполнения команды flask user greet abcde:

Hello, abcde from app

Смотрите также

  • класс Group,
    который является базовым классом для AppGroup
  • метод command,
    который регистрирует команду в группе
  • метод group,
    который создаёт подгруппу команд
  • декоратор with_appcontext,
    который обеспечивает контекст приложения
Мы используем cookie для работы сайта, аналитики и персонализации. Обработка данных происходит согласно Политике конфиденциальности.
принять все настроить отклонить