##発生事象
vscodeでdjango関連のunresolved importが発生。
たとえば、unresolved import 'django.urls' python(unresolved-import)といった具合です。
気持ち悪かったので、解消した対応方法を。
##ローカル環境
- Windows版dockerで開発環境を構築。Pythonの仮想環境はpipenvを利用しています。
項目 | バージョン |
---|---|
OS | Window10 2004 |
Python | 3.8.2 |
docker | 2.3.0.5 |
Editor | VSCode:1.49.2 |
- 仮想環境の各種ソフトウェアバージョンは下記の通りです。
項目 | バージョン |
---|---|
OS | ubunts:20.04 |
python | 3.8.2 |
Django | 3.0.6 |
gunicorn | 20.0.4 |
psycopg2 | 2.8.5 |
PostgeSQL | 2.3 |
nginx | 1.17.10 |
##仮想環境の構築は
- Workplaces配下にappフォルダを作成しています。
- appフォルダ直下で pipenv install を実行しています。
- djangoプロジェクトは pipenv shell からappフォルダ直下で startproject で作成ています。
##対応
####1.ワークスペース直下に.envファイルを作成
####2..envファイルに下記を記載
PYTHONPATH = app\.venv\Lib\site-packages
####3.VSCodeのenvFileの設定を確認します。
#####3-1.VSCodeのメニューから File->Preferences->Settings で設定を開きます。
#####3-3.検索窓に「python.envFile」を入力します。
#####3-4.python.envFileの値が「${workspaceFolder}/.env」であるならそのままで問題なし。おそらくデフォルトでワークスペース直下がパスとなっていると思います。
#####3-5.VSCodeを立ち上げなおす。
おそらく、django関連のunresolved importが解消されているかと
##あとがき
VSCodeからは見えていないので当たり前といば当たり前なのですが、、、
##参考にさせていただいたサイト
https://blog.mrym.tv/2019/08/vscode-python-unresolved-import/