之前嘗試過用vscode開發python web。但是在設置virtualenv時出現問題,網上查找原因是windows系統python在虛擬環境下不能逐行執行,不過好像現在解決了?!
創建項目文件夾,打開文件夾在空白處shift + 右鍵 打開命令行窗口
在項目文件夾中使用virtualenv .env 創建.env文件夾
創建 requirements.txt 文件,文件中添加以下內容,pylint為python的靜態語法檢測器,pylint-django 是適用于django項目的語法檢查其插件,autopep8 是代碼格式化工具
django
pylint
pylint-django
autopep8
執行 .env\Scripts\activate.bat 激活虛擬環境
執行 pip install -r requirements.txt 安裝相關模塊
執行 django-admin startproject <project> . 在當前目錄下創建django項目文件夾
在<project>中執行 python manage.py startapp <app> 新建django app
在當前路徑下執行 code . 打開vscode
在 vscode 中按下 Ctrl + Shift + P,輸入 select,選擇 Python: Select Workspace Interpreter,在出現的選項中將Python解析器指向env文件夾中的python
20170529154256.png
- 在 vscode 中按下 Ctrl + Shift + P,輸入 workspace,選擇 Preferences: Open Workspace Settings,配置完成后的JSON文件如下
{
"python.pythonPath": "e:web-server/.env/scripts/python.exe",
"python.linting.pylintPath": "pylint",
"python.linting.pylintArgs": [
"--load-plugins", "pylint_django"
],
"python.formatting.autopep8Path": "autopep8"
}
- 打開調試,運行,然后打開lanuch.json,修改django的配置文件如下
20170529155150.png
{
"name": "Django",
"type": "python",
"request": "launch",
"stopOnEntry": true,
"pythonPath": "${config:python.pythonPath}",
"program": "${workspaceRoot}/demo/manage.py",
"cwd": "${workspaceRoot}",
"args": [
"runserver",
"--noreload"
],
"env": {},
"envFile": "${workspaceRoot}/.env",
"debugOptions": [
"WaitOnAbnormalExit",
"WaitOnNormalExit",
"RedirectOutput",
"DjangoDebugging"
]
},
這樣即使退出虛擬環境,直接運行vscode也可以debug了。