1. ホーム
  2. Python

ModuleNotFoundError: django という名前のモジュールがない 問題1解決済み

2022-02-07 17:12:20
<パス

ModuleNotFoundError: django という名前のモジュールがない。

Python を実行する場合 manage.py migrate は、'django' という名前のモジュールが見つからなかったとして、以下のエラーを報告します。

エラーの再現。
mamerunminmatoMacBook-Pro:learning_log RunMin$ ソース ll_env/bin/activate
(ll_env) mamerunminmatoMacBook-Pro:learning_log RunMin$ python manage.py マイグレート
トレースバック (最も最近の呼び出し):
ファイル " manage.py "、8 行目、in
from django.core.management import execute_from_command_line
ModuleNotFoundError: django' という名前のモジュールはありません。
上記の例外が直接の原因となって、以下のような例外が発生しました。
トレースバック (最も最近の呼び出し):
ファイル " manage.py "、ライン 14、で
) からexc
ImportError: Django をインポートできませんでした。Django がインストールされ、PYTHONPATH 環境変数で利用可能であることを確認し ていますか?仮想環境を有効にするのを忘れていませんか?

解析してください。
しかし、Djgonsをインストールした状態でpip listというコマンドを実行すると、以下のようになります。
(ll_env) mamerunminmatoMacBook-Pro:learning_log RunMin$ pip list
パッケージバージョン


Django 2.1.5
パイプ 18.1
ピッツ 2018.9
setuptools 39.0.1

後でわかったのですが、Termianl のターミナルで呼び出されるデフォルトの python インタプリタは /usr/bin/python で、django が作る仮想環境内の python インタプリタではないのですね。そのため、python インタープリタを絶対パスで呼び出すと、 /Volumes/IMACII/Python/learning_log/ll_env/bin/python が正常に実行できるようになります。 管理.py マイグレート

解決策
(ll_env) mamerunminmatoMacBook-Pro:learning_log RunMin$ ls
ラーニングログll_env manage.py
(ll_env) mamerunminmatoMacBook-Pro:learning_log RunMin$ /Volumes/IMACII/Python/learning_log/ll_env/bin/python manage.py マイグレート
実行する操作。
すべてのマイグレーションを適用:admin、auth、contenttypes、sessions
マイグレーションを実行する
contenttypes.0001_initialを適用中... OK
auth.0001_initialを適用中... OK
admin.0001_initialを適用する... OK
admin.0002_logentry_remove_auto_addの適用中... OK
admin.0003_logentry_add_action_flag_choicesの適用中... OK
contenttypes.0002_remove_content_type_nameを適用中... OK
auth.0002_alter_permission_name_max_lengthの適用中... OK
auth.0003_alter_user_email_max_lengthを適用中... OK
auth.0004_alter_user_username_optsを適用中... OK
auth.0005_alter_user_last_login_nullを適用中... OK
auth.0006_require_contenttypes_0002を適用中... OK
auth.0007_alter_validators_add_error_messages を適用中... OK
auth.0008_alter_user_username_max_lengthを適用中... OK
auth.0009_alter_user_last_name_max_lengthを適用しています... OK
sessions.0001_initialの適用中... OK
(ll_env) mamerunminmatoMacBook-Pro:learning_log RunMin$ です。

概要を説明します。
Python インタープリタを呼び出すときは、現在どの環境を使用しているかに注意してください。複数の仮想 Python 環境を作成し、それぞれ異なる lib を pip install lib_name でインストールしているかもしれませんので、混乱を避けるようにしてください。