0

我正在从 django 1.6.11 迁移到 Django1.10(我知道这很旧。但最终迁移到最新版本)

我的管理命令正在中断。

class Command(LabelCommand):
    label = 'filename'

    def add_arguments(self, parser):
        parser.add_argument('filename', nargs='+', type=str)

    def handle_label(self, filename, **options):
        print filename

这是正确的方法吗?以上没有按预期工作,即

4

1 回答 1

1

对我来说,以下工作:改变

parser.add_argument('filename', nargs='+', type=str)

parser.add_argument('args', metavar=self.label, nargs='+')

django/django/core/management/base.py从 1.7 迁移到 1.10.7 时,我在修复 LabelCommands 时直接复制了一行。

虽然您可能想要做的是添加替换上面的行

super(Command, self).add_arguments(parser)

保持前向兼容性。

于 2017-08-17T10:52:13.270 回答