PyCharm(Community版(フリー))でDjangoプロジェクトを開いた時にdjangoコードにエラーが出たので、Pythonインタープリタ(Python環境)の設定をして解決した時の事を説明しています。
※ 本ページはプロモーションが含まれています。
Djangoプロジェクトを初めてPyCharmで開いて開発してみたのですが、PyCharmの開発エディタのdjangoのコード部分、例えば、from文のdjangoパッケージ(モジュール)を読み込んでいるコード部分で赤下線付きのエラーが発生しました("Invalid Python interpreter selected for the project"というエラーメッセージも。日本語版なら"プロジェクトに無効なPythonインタープリターが選択されています"というエラーメッセージ)。
このエラーは、PyCharmで使用中のPythonインタープリタ環境でdjangoパッケージが未インストールのため、djangoパッケージを参照できないという問題が発生しているからです。
という事で、本記事ではエラーを解決するためにPyCharmで使用するPythonインタープリターの設定方法について説明しています。
前提として、DjangoパッケージがインストールされているPython環境を事前に用意しておく必要があります。djangoパッケージはpipでインストールできますが、Python環境は開発プロジェクト毎にvenvのPython仮想環境を使うのが便利です。venvについては別ページで説明しているので、そちらを参考にしてください。
venvでPythonの仮想環境を試してみる
■動作環境とバージョン情報です。
OS:macOS Big Sur(バージョン11.7)
PyCharm:Community版、2022.2.2
PyCharmにはフリーのCommunity版と有料のPro版があります。公式サイトを見る限り(2022/10/10時点)、両者の差は機能面で多くありますが、Web系の開発やフレームワークを使用する場合はPro版の方が良さそうです。DjangoのサポートもPro版のみとなっています。ただ、個人的にCommunity版でDjangoプロジェクトを開いて使用した感じだと、エディタとしては十分使えるし、デバッグもできて便利なのでかなり使えるかなと思っています。今はDjangoの学習をしているだけですが、これから何かちゃんとDjangoでウェブアプリを開発する段階になったらPro版の使用を検討してみようと思います。
Community版とPro版の違いの詳細については、公式サイトで確認してください。
PyCharm Pro と PyCharm Communityの比較 | PyCharm
PyCharmで使用するPython環境(Pythonインタープリタ)を設定していきます。
まず、PyCharmの設定画面を開きます。設定画面は、上部メニューバーのPyChram->Preferencesを選択すれば開けます(ショートカットなら"command + ,")。
設定画面の左サイドバーからプロジェクトのPythonインタープリター(Python Interpreter)を選択し、"インタープリターの追加(Add Interpreter)"->"ローカルインタープリターの追加(Add Local Interpreter)"を選択します。
Pythonインタープリターの追加画面が開くので、左サイドバーのVirtualenv環境を選択し、"環境:"の"既存"にチェックを入れて、"インタープリター:"の右側にある"…"を選択します。
Pythonインタープリターの選択画面が開くので、使用したいPython実行ファイルを選択してOKします(Python実行ファイルは、djangoがインストールされているPython環境を選択する。venvの仮想環境を使うなら、"仮想環境トップディレクトリ/bin/python")。
環境設定画面まで戻ると、選択したPythonインタープリタ環境のパッケージ一覧が表示されていて、そこにDjangoパッケージがあれば問題ありません。
これでPythonインタープリタの設定は完了です。PyCharmの開発エディタ画面に戻ると、問題の赤下線のエラーは解消されていて、django関連の関数やパッケージなどのコードをcmmand押しながら選択すれば、djangoのソースファイルを開いて見れるようになります。
Djangoウェブアプリを開発する場合、ModelやFormオブジェクト内のデータを確認しながらデバッグは必須だと思います。そして、PyCharmでももちろんDjangoのデバッグをする事が可能です。
PyCharmでDjangoのデバッグ方法については別ページで説明していますので、そちらを参考してください。
PyCharmでDjangoを起動してデバッグする方法