我正在编写一个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')