ModuleNotFoundError: Нет модуля с именем 'rest_framework' (перепробовано множество решений, но не работает)

Я столкнулся с этой ошибкой.

ModuleNotFoundError: No module named 'rest_framework'

У меня настроена виртуальная среда, и остальной фреймворк установлен правильно.

Когда я запускаю pip3.10 show djangoframework, я получаю

Name: djangorestframework
Version: 3.14.0
Summary: Web APIs for Django, made easy.
Home-page: https://www.django-rest-framework.org/
Author: Tom Christie
Author-email: tom@tomchristie.com
License: BSD
Location: c:\users\chan\desktop\testpy\lib\site-packages
Requires: django, pytz
Required-by:

Мой интерпретатор - Python 3.10.8 той же версии, и он предназначен для виртуальной среды. Мой VSCode показывает мой интерпретатор как Python 3.10.8 ("TESTPY":venv) .\Scripts\python.exe.

Я также включил rest_framework в INSTALLED_APPS в settings.py

INSTALLED_APPS = [
    'rest_framework',
    'django.contrib.admin',
    'django.contrib.auth',
    'django.contrib.contenttypes',
    'django.contrib.sessions',
    'django.contrib.messages',
    'django.contrib.staticfiles',
]

Ниже приведена полная ошибка, которую я получаю.

(TESTPY) PS C:\Users\Chan\Desktop\TESTPY> python3 manage.py runserver
Watching for file changes with StatReloader
Exception in thread django-main-thread:
Traceback (most recent call last):
  File "C:\Program Files\WindowsApps\PythonSoftwareFoundation.Python.3.10_3.10.2288.0_x64__qbz5n2kfra8p0\lib\threading.py", line 1016, in _bootstrap_inner
    self.run()
  File "C:\Program Files\WindowsApps\PythonSoftwareFoundation.Python.3.10_3.10.2288.0_x64__qbz5n2kfra8p0\lib\threading.py", line 953, in run
    self._target(*self._args, **self._kwargs)
  File "C:\Users\Chan\AppData\Local\Packages\PythonSoftwareFoundation.Python.3.10_qbz5n2kfra8p0\LocalCache\local-packages\Python310\site-packages\django\utils\autoreload.py", line 64, in wrapper
    fn(*args, **kwargs)
  File "C:\Users\Chan\AppData\Local\Packages\PythonSoftwareFoundation.Python.3.10_qbz5n2kfra8p0\LocalCache\local-packages\Python310\site-packages\django\core\management\commands\runserver.py", line 125, in inner_run
    autoreload.raise_last_exception()
  File "C:\Users\Chan\AppData\Local\Packages\PythonSoftwareFoundation.Python.3.10_qbz5n2kfra8p0\LocalCache\local-packages\Python310\site-packages\django\utils\autoreload.py", line 87, in raise_last_exception 
    raise _exception[1]
  File "C:\Users\Chan\AppData\Local\Packages\PythonSoftwareFoundation.Python.3.10_qbz5n2kfra8p0\LocalCache\local-packages\Python310\site-packages\django\core\management\__init__.py", line 398, in execute     
    autoreload.check_errors(django.setup)()
  File "C:\Users\Chan\AppData\Local\Packages\PythonSoftwareFoundation.Python.3.10_qbz5n2kfra8p0\LocalCache\local-packages\Python310\site-packages\django\utils\autoreload.py", line 64, in wrapper
    fn(*args, **kwargs)
  File "C:\Users\Chan\AppData\Local\Packages\PythonSoftwareFoundation.Python.3.10_qbz5n2kfra8p0\LocalCache\local-packages\Python310\site-packages\django\__init__.py", line 24, in setup
    apps.populate(settings.INSTALLED_APPS)
  File "C:\Users\Chan\AppData\Local\Packages\PythonSoftwareFoundation.Python.3.10_qbz5n2kfra8p0\LocalCache\local-packages\Python310\site-packages\django\apps\registry.py", line 91, in populate
    app_config = AppConfig.create(entry)
  File "C:\Users\Chan\AppData\Local\Packages\PythonSoftwareFoundation.Python.3.10_qbz5n2kfra8p0\LocalCache\local-packages\Python310\site-packages\django\apps\config.py", line 193, in create
    import_module(entry)
  File "C:\Program Files\WindowsApps\PythonSoftwareFoundation.Python.3.10_3.10.2288.0_x64__qbz5n2kfra8p0\lib\importlib\__init__.py", line 126, in import_module
    return _bootstrap._gcd_import(name[level:], package, level)
  File "<frozen importlib._bootstrap>", line 1050, in _gcd_import
  File "<frozen importlib._bootstrap>", line 1027, in _find_and_load
  File "<frozen importlib._bootstrap>", line 1004, in _find_and_load_unlocked
ModuleNotFoundError: No module named 'rest_framework'

Я искал в гугле решение этой проблемы столько раз, что все ссылки стали фиолетовыми. У кого-нибудь есть идеи, почему это происходит? Спасибо

Редактирование:

Когда я запускаю pip list, вот что я получаю.

(TESTPY) PS C:\Users\Chan\Desktop\TESTPY> pip list
Package             Version
------------------- -------
asgiref             3.5.2
Django              4.1.2
djangorestframework 3.14.0
pip                 22.3
pytz                2022.5
setuptools          63.2.0
sqlparse            0.4.3
tzdata              2022.5

У вас две разные установки python

из pip3 show, есть такая строка:

Location: c:\users\chan\desktop\testpy\lib\site-packages

но ваш след стека перечисляет файлы, которые находятся в

File "C:\Users\Chan\AppData\Local\Packages\PythonSoftwareFoundation.Python.3.10_qbz5n2kfra8p0\LocalCache\local-packages\Python310\site-packages\

Возможно, вам следует использовать только команду python вместо python3. Потому что когда вы активируете virtualenv, бинарник python будет переопределен, а python3, возможно, нет.

Попробуйте:

python manage.py runserver

Или вы можете даже просто сделать:

./manage.py runserver

Если это не работает, возможно, причина в том, что файл manage.py должен иметь разрешения на выполнение :

chmod +x manage.py
Вернуться на верх