Flask在VSCODE下基本開發環境配置
1.建立環境
cd /project/path
python3 -m venv venv
第一個VENV是命令,第二個是資料夾名
如果環境不要了,一般做法是直接整個(VENV)資料夾刪掉
環境修改下面會說
2.啟用環境
. venv/bin/activate
venv是1中建立的資料夾,這麼寫是接1,即認為你當前路徑在VENV同級路徑
執行過1後,會在VENS下建立一系列檔案,其中2中所用的是啟用指令碼
3.修改pip映象為國內源
mkdir ~/.pip vim ~/.pip/pip.conf [global] index-url = https://pypi.tuna.tsinghua.edu.cn/simple
清華源,會比阿里的源更新的更快一些
修改後,PIP下載包的速度會提高很多,大部分都不會等太久
4.安裝專案依賴包
pip install -r requirement.txt
requirement.txt一般是大家的約定檔名
裡面存放專案依賴等pip包,因為源或者其他環境因素可能會有安裝失敗的情況
最終結果以 pip list 返回結果為準
5.VS code 中Debug Flask程式配置 修改.vscode
中的launch.json
為如下內容
{ "name": "Python: Flask", "type": "python", "request": "launch", "stopOnEntry": false, "pythonPath": "${config:python.pythonPath}", "program": "${workspaceRoot}/venv/bin/flask", "env": { "FLASK_APP": "${workspaceRoot}/app.py" }, "args": [ "run", "--no-debugger", "--no-reload" ], "debugOptions": [ "WaitOnAbnormalExit", "WaitOnNormalExit", "RedirectOutput" ] }
截至發部落格時間vs外掛自帶的配置是有問題的
修改後可以使用斷點除錯,變數觀察等IDE特性
6.解決 E1101:Instance of 'SQLAlchemy' has no 'Table' member
誤報問題
pip install pylint-flask
然後在 VS code中修改setting.json
"python.linting.pylintArgs": ["--load-plugins", pylint_flask"]
目前python等linting外掛對SQLAlchemy支援是有問題的,會有誤報
但是用6所用方法修改之後,在跳轉的時候有時還會有問題
"python.unitTest.unittestArgs": [ "-v", "-s", ".", "-p", "test*.py" ], "python.unitTest.pyTestEnabled": false, "python.unitTest.nosetestsEnabled": false, "python.unitTest.unittestEnabled": true
unittest預設的discover是test*.py,在vscoder中,三個用一個,必須禁用另外兩個
[1,2,4] http://flask.pocoo.org/docs/1.0/installation/
[3] http://www.cnblogs.com/biglittleant/p/6944180.html
[5] https://donjayamanne.github.io/pythonVSCodeDocs/docs/debugging_debugging-flask/ , https://www.jianshu.com/p/0f9fd8823d90
[6] https://stackoverflow.com/questions/28193025/pylint-cant-find-sqlalchemy-query-member