Django自定义命令适用于命令行,但不适用于call_command

时间:2014-11-28 22:47:50

标签: python django python-2.7

我有一个自定义django管理员调用,我可以使用命令行成功调用:python manage.py mycustomcommand。因此,目录是使用' management'中的必要 init 文件设置的。和'命令'文件夹,我在我的设置文件中列出了INSTALLED_APPS下的应用程序。

当我尝试从另一个文件运行命令并使用call_command(' mycustomcommand')时,该命令是一个未知命令。它是如何从命令行工作但不是来自call_command?我从' core.management'运行了get_commands()。我的命令没有列在那里。我是否需要做更多的事情才能找到它?

如果重要,我试图从app目录调用mycustomcommand,该目录与自定义命令所在的app目录不同。我的所有app目录都具有正确的结构,并且处于INSTALLED_APPS状态。我所有的谷歌搜索似乎表明它应该只是工作,我已经尝试了所有合理的建议无济于事。感谢您的任何见解。

1 个答案:

答案 0 :(得分:0)

事实证明,出于我的目的,我需要从另一个自定义命令文件中调用我的自定义命令。我的意图是有一个文件可以调用我的其他自定义命令,而这只是一个普通的Python文件。一旦我将这个常规Python文件制作成另一个自定义命令文件,它就能满足我的需要。