import click
@click.group()
@click.option('--username')
def cli1(username):
click.echo(username)
@cli1.command()
def something():
click.echo('howdy')
@click.group()
def cli2():
pass
@cli2.command()
def somethingelse():
click.echo('doody')
cli = click.CommandCollection(sources=[cli1, cli2])
if __name__ == '__main__':
cli()
これで に渡すことができると--username
思いsomething
ますが、このスクリプトを実行すると:
python script.py something --username hi
私は得る:
エラー: そのようなオプションはありません: --username
CommandCollection
を使用すると、私のオプションが壊れているようです。他の誰かが以前にこれに対処したことがありますか? クリック リポジトリには、2015 年以降触れられておらず、解決策がないオープン チケットがあります。