Создание иерархических команд с помощью Python Click - PullRequest
3 голосов
/ 18 апреля 2019

Предположим, я хочу создать CLI, который выглядит следующим образом

cliName user create
cliName user update

Как бы я это сделал?

Я пытался сделать что-то вроде этого -

@click.group()
def user():
   print("USER")
   pass

@user.command()
def create():
    click.echo("create user called")

когда я запускаю cliName user create, операторы print не запускаются. Ничего не работает.

1 Ответ

2 голосов
/ 18 апреля 2019
#!/usr/bin/env python

import click


@click.group()
def cli(**kwargs):
    print(1)


@cli.group()
@click.option("--something")
@click.option("--else")
def what(**kwargs):
    print(2)


@what.command()
@click.option("--chaa")
def ever(**kwargs):
    print(3)


if __name__ == '__main__':
    cli()


# ./cli.py what ever
# 1
# 2
# 3
...