正在获取此错误:argparse.ArgumentError:参数-d/-迄今为止:冲突的选项字符串:-d



我正在编写一个Django管理命令。我想包括一些可选的论点。

在命令类中,我写道:

def add_arguments(self, parser):
parser.add_argument('-d', '--from-date', type=str, help='Some help text')
parser.add_argument('-d', '--to-date', type=str, help='Some help text')
parser.add_argument('-d', '--from-type', type=str, help='Some help text')
parser.add_argument('-d', '--until-type', type=str, help='Some help text')

但是,无论我运行有参数还是没有参数的命令,我都会得到以下错误:

argparse.ArgumentError: argument -d/--to-date: conflicting option string: -d

我做错了什么?非常感谢。

不能将同一个字母用作短参数。您应该使用以下内容:

def add_arguments(self, parser):
parser.add_argument('-f', '--from-date', type=str, help='Some help text')
parser.add_argument('-t', '--to-date', type=str, help='Some help text')
parser.add_argument('-p', '--from-type', type=str, help='Some help text')
parser.add_argument('-u', '--until-type', type=str, help='Some help text')

最新更新