buc*_*age 10 visual-studio-code
正如标题所示,我正在使用 VSCode 调试器来启动 django 应用程序。我使用创建了虚拟环境 python3 -m virtualenv venv
,它显示在我想要的地方。我已经检查了 VSCode django 和调试教程,但与开始时相比,我并没有更接近答案。
vscode \xe2\x9e\x9c /workspaces/docker-test-proj $ ls -l\ntotal 0\ndrwxr-xr-x 8 vscode vscode 256 Apr 6 14:30 helloworld\n\n\nvscode \xe2\x9e\x9c /workspaces/docker-test-proj/helloworld $ ls -l\ntotal 136\ndrwxr-xr-x 11 vscode vscode 352 Apr 6 13:24 app\n-rw-r--r-- 1 vscode vscode 131072 Apr 6 13:42 db.sqlite3\ndrwxr-xr-x 8 vscode vscode 256 Apr 6 13:21 helloworld\n-rwxr-xr-x 1 vscode vscode 666 Apr 6 13:19 manage.py\n-rw-r--r-- 1 vscode vscode 175 Apr 6 14:30 requirements.txt\ndrwxr-xr-x 6 vscode vscode 192 Apr 6 13:20 venv\n
Run Code Online (Sandbox Code Playgroud)\n我需要将source venv/bin/activate
命令放在下面的 launch.json 文件中的什么位置才能在启动 VSCode 调试器时运行它?
{\n "version": "0.2.0",\n "configurations": [\n {\n "name": "Python: Django",\n "type": "python",\n "request": "launch",\n "program": "${workspaceFolder}/helloworld/manage.py",\n "args": [\n "runserver",\n ],\n "django": true\n },\n ]\n}\n
Run Code Online (Sandbox Code Playgroud)\n
Mik*_*inn 20
您不需要添加activate
到launch.json
. 你有3个选择(我更喜欢第一个选择):
python
提供虚拟环境中的完整路径。这是我的启动配置之一。该python
入口指向python
虚拟环境中的可执行映像。
{
"justMyCode": false,
"name": "Ancient Warmth / Django-Oscar",
"type": "python",
"request": "launch",
"program": "${workspaceFolder}/manage.py",
"python": "${env:oscar}/bin/python",
"args": [
"runserver",
"--noreload",
"0.0.0.0:8001",
],
"django": true
},
Run Code Online (Sandbox Code Playgroud)
请注意,上面引用的是一个名为 的环境变量,oscar
该变量指向虚拟环境。我oscar
这样定义.bashrc
:
export oscar=/var/work/django/oscar
Run Code Online (Sandbox Code Playgroud)
环境变量定义在哪里并不重要,只要在 VSCode 运行之前定义即可。
在 VSCode 窗口底部靠近左侧的位置,您将找到正在使用的 Python 环境的名称。
A。单击它,工作区列表从顶部下拉。
b. 选择要修改Python的工作空间,然后你将看到Python解释器的列表。您想要的解释器可能没有显示,因此单击“我找不到我想要选择的解释器...”,然后单击“查找...”。
C。导航到您的虚拟环境并单击python
。
此选项是一种手动方式,可产生与选项 #2 相同的更改。.vscode/settings.json
编辑项目目录中调用的文件,并将其设置python.pythonPath
为指向python
虚拟环境中的程序。这是我的完整.vscode/settings.json
文件:
export oscar=/var/work/django/oscar
Run Code Online (Sandbox Code Playgroud)
我给了 @mike-slinn +1,因为它为我指明了正确的方向,但如果你是 venv 的 Windows 用户,这正是我所做的。打开 launch.json 并添加以下内容:
"python":"C:/Users/[pathto]/[projectfolder]/.venv/Scripts/python.exe"
Run Code Online (Sandbox Code Playgroud)
完整文件:
{
"version": "0.2.0",
"configurations": [
{
"name": "Python: Current File",
"type": "python",
"python": "C:/Users/cullen/pathto/projectfolder/.venv/Scripts/python.exe",
"request": "launch",
"program": "${file}",
"console": "integratedTerminal",
"justMyCode": true
}
]}
Run Code Online (Sandbox Code Playgroud)
归档时间: |
|
查看次数: |
25523 次 |
最近记录: |