首页 > 解决方案 > VSCode Debug - 为 django 启动时添加命令?

问题描述

我最近开始使用 VSCode 来调试 Django,效果很好。

我使用一个系统来管理我的环境变量,但这需要首先使用它的关键字(keys python manage.py runserver

调试可以很好地启动标准 Django 安装 - 但我似乎无法让 python 调试器运行上述语句。

在我launch.json的尝试中,我尝试了一些配置,如下所示:

# launch.json
    {
        "name": "Python: Django",
        "type": "python",
        "request": "launch",
        "preLaunchTask": "keys-run",
        "program": "${workspaceFolder}/manage.py",
        "args": [
            "runserver"
        ],
        "django": true
    }
# tasks.json
    {
        "type": "shell",
        "label": "keys-run",
        "command": "keys"
    }

我也试过这个:

    {
        "name": "Python: Django",
        "type": "python",
        "request": "launch",
        "program": "keys",
        "args": [
            "python", "manage.py", "runserver"
        ],
        "django": true
    }

第二个配置给我一个错误,没有这样的文件或目录'/home/username/project_directory/keys'

但是从命令行(zsh)我可以运行命令:keys python manage.py runserver它会加载我的环境变量,然后加载并运行 django 没有问题。

将其放入 VSCode 调试器的最佳方法是什么?

标签: pythondjangovisual-studio-codevscode-settingsvscode-debugger

解决方案


你可以改用环境变量吗?这是我如何使用触发器变量(通过"env")来打开/关闭 Django 调试工具栏的示例:

{
    "version": "0.2.0",
    "configurations": [
        {
            "name": "Python: Django",
            "type": "python",
            "request": "launch",
            "env": {"DJDT": "1"},
            "program": "${workspaceFolder}/manage.py",
            "args": [
                "runserver",
                "0:8047",
            ],
            "django": true
        }
    ]
}

如果你不能让它工作,那怎么"program": "${workspaceFolder}/keys manage.py"办?


推荐阅读