0

我有一个带有 1 个参数并且可以带有多个标志的命令。

@click.command()
@click.argument('item')
@click.option('--list-items', help='list items', is_flag=True)
def cli(item, list_items):
    if list_items:
        click.echo(ITEMS)
        return

目前它返回:

Error: Missing argument "item".

即使我不提供参数,我如何才能访问 --list-items 的功能?就像 --help 标志一样。

4

2 回答 2

1

您必须item选择:

@click.argument('item', required=False)

然后在函数中进行错误处理(例如引发BadParameter()异常)。

于 2016-07-30T14:32:58.897 回答
0

您将其设为强制参数,通过添加 required= False 或为其添加默认值使其成为可选参数

于 2016-07-30T14:36:08.533 回答