我有几个子类的自定义命令类BaseCommand
。我以特定顺序使用它们来填充数据库。
我想编写另一个命令将它们组合成一个命令。我不想编写一个以正确顺序执行命令的 shell 脚本。我希望它是一个 django-admin 命令。
我知道我可以将所有命令的代码放在一个单独的命令中,但我正在寻找一种更通用的方法来做到这一点。这样我就可以将每个 db 表的所有填充脚本都清理干净并分开。
我有几个子类的自定义命令类BaseCommand
。我以特定顺序使用它们来填充数据库。
我想编写另一个命令将它们组合成一个命令。我不想编写一个以正确顺序执行命令的 shell 脚本。我希望它是一个 django-admin 命令。
我知道我可以将所有命令的代码放在一个单独的命令中,但我正在寻找一种更通用的方法来做到这一点。这样我就可以将每个 db 表的所有填充脚本都清理干净并分开。
您可以编写另一个命令,并call_command
用于您要运行的每个命令。
from django.core import management
然后在您的管理命令中:
management.call_command('my_first_command')
management.call_command('my_second_command')
...
如果您的管理命令采用 args 或 kwargs,您将需要做更多的工作。