如何在PyCharm中调试Django命令

Tar*_*kyi 76 django pycharm

我知道如何使用PyCharm运行命令(工具 - >运行manage.py任务),但我也想调试它们,包括我的命令和第三方应用程序的命令.

小智 148

您可以通过在"运行/调试配置"菜单上创建自定义Django服务器条目来在PyCharm中调试自定义Django管理/管理命令:

  • 点击Edit Configurations....
  • 单击加号并选择Django server.
  • 根据需要填写Name,清除HostPort字段,检查Custom run command并输入复选框右侧命令的名称.
  • 在单独的字段中输入任何额外的命令行参数Additional options,而不是在run命令中附加.
  • 单击确定.

现在设置断点,从Run/Debug Configuration菜单中选择新配置,然后单击Debug按钮.Etvoilà!

  • 强调像我这样显然无法正常阅读的人:**主机**和**端口**字段必须清除,否则自定义命令将无法正常工作! (17认同)
  • 对于那些苦苦挣扎的人:"自定义运行命令"框应该只包含您的命令.例如,如果您从控制台运行`py manage.py cmd`,则此框将仅包含`cmd`. (8认同)
  • 我的 plus 中没有 Django 服务器选项 (3认同)
  • @Dejell:您需要专业版的 Pycharm 来支持 DJANGO。(https://www.jetbrains.com/pycharm/features/editions_comparison_matrix.html) (3认同)

小智 7

我正在使用以下自定义 Django 命令进行解释:

python manage.py execute_algorithm -f input_data.json
Run Code Online (Sandbox Code Playgroud)

配置 Django 命令的步骤: 步骤:从 Django 工具栏转到:

运行 > 编辑配置

单击左上角的“+”图标,创建新命令>从下拉列表中选择“Django 服务器”。

填写以下详细信息:

名称:您想要为此配置指定的任何合适的名称,例如execute_algorithm_command

主持人

端口:默认为8000,清除即可。

自定义运行命令:首先选中此框。在那里提供您的命令名称。你可以从 得到它apps/module/management/command/execute_algorithm。例如值:execute_algorithm

附加选项:无论命令名称之后有什么。值为:-f input_data.json

  • @miken32 回头看第一个有一个人需要的一切,但由于某种原因,我没有得到它。这个答案的作用与第一个答案相同,但使用了一个例子。顺便说一句,我们中的一些人对事物的理解有所不同。 (2认同)

Fis*_*tor 6

由于清除主机和端口不会使命令运行(PyCharm 5),我发现的解决方案是使用Python运行配置而不是Django服务器.填写Script您的manage.py脚本,其他参数Script Parameters,并调整您的环境,如Working directory.

  • 这就是它为我工作的原因(pycharm 2016)。将 manage.py 放在脚本中,将您的 django 管理命令放在脚本参数中(与任何 django 管理命令标志一起)并更改工作目录。 (2认同)