management: backport django 1.8 compatibility code (#28039)
This commit is contained in:
parent
7e9287ac48
commit
c192ea99a7
|
@ -23,10 +23,14 @@ def run_command_from_argv(command, argv):
|
|||
command._called_from_command_line = True
|
||||
parser = command.create_parser(argv[0], argv[1])
|
||||
|
||||
options = parser.parse_args(argv[2:])
|
||||
cmd_options = vars(options)
|
||||
# Move positional args out of options to mimic legacy optparse
|
||||
args = cmd_options.pop('args', ())
|
||||
if command.use_argparse:
|
||||
options = parser.parse_args(argv[2:])
|
||||
cmd_options = vars(options)
|
||||
# Move positional args out of options to mimic legacy optparse
|
||||
args = cmd_options.pop('args', ())
|
||||
else:
|
||||
options, args = parser.parse_args(argv[2:])
|
||||
cmd_options = vars(options)
|
||||
handle_default_options(options)
|
||||
try:
|
||||
command.execute(*args, **cmd_options)
|
||||
|
|
Loading…
Reference in New Issue