1

我有几个子类的自定义命令类BaseCommand。我以特定顺序使用它们来填充数据库。

我想编写另一个命令将它们组合成一个命令。我不想编写一个以正确顺序执行命令的 shell 脚本。我希望它是一个 django-admin 命令。

我知道我可以将所有命令的代码放在一个单独的命令中,但我正在寻找一种更通用的方法来做到这一点。这样我就可以将每个 db 表的所有填充脚本都清理干净并分开。

4

1 回答 1

2

您可以编写另一个命令,并call_command用于您要运行的每个命令。

from django.core import management

然后在您的管理命令中:

management.call_command('my_first_command')
management.call_command('my_second_command')
...

如果您的管理命令采用 args 或 kwargs,您将需要做更多的工作。

于 2015-11-12T11:57:40.057 回答