Ошибка импорта при запуске Django из Windows
Пытаюсь запустить Django (версия 2.1) из Window's Python 3.10.6. Я получил ошибку импорта из файла manage.py: ImportError( "Не удалось импортировать Django. Вы уверены, что он установлен и " "доступна в вашей переменной окружения PYTHONPATH? Вы " "забыли активировать виртуальное окружение?"
Пробовал несколько раз, безрезультатно:
- Установил Django на virtualenv через pip:
PS C:\Users\nickg\vidly6> newenv\Scripts\activate
(newenv) PS C:\Users\nickg\vidly6> newenv install django==2.1
(newenv) PS C:\Users\nickg\vidly6> django-admin startproject vidly6 .
(newenv) PS C:\Users\nickg\vidly6> pip install virtualenv
PS C:\Users\nickg\vidly9> code .
- Установил Django на pipenv:
PS C:\Users\nickg\vidly6> pipenv install django==2.1
PS C:\Users\nickg\vidly6> pipenv shell
- Использовал инструкции с сайта Джанго (создал файл vidly9 здесь, чтобы применить его к другому файлу):
PS C:\Users\nickg\vidly9> vidly9-env\Scripts\activate.bat
PS C:\Users\nickg\vidly9> python -m pip install django==2.1
PS C:\Users\nickg\vidly9> pipenv shell
PS C:\Users\nickg\vidly9> django-admin startproject vidly9 .
PS C:\Users\nickg\vidly9> code .
Вчера, при прохождении шагов Django, я получил предупреждение, что скрипт находится в директории, но не в пути:
C:\Users\nickg\AppData\Local\Packages\PythonSoftwareFoundation.Python.3.10_qbz5n2kfra8p0\LocalCache\local-packages\Python310\Scripts
Поэтому я зашел в System Properties -> Environmental Variables -> User Variables. Именно там в переменной "Path" и добавил ее как значение. Тоже не помогло.
В вашем первом примере вы уже создали виртуальную среду под названием 'newenv'. На самом деле нет необходимости использовать virtualenv после этого, поскольку это инструмент для создания виртуальных сред. Pipenv также является способом работы с виртуальными средами, но может быть полезно сначала пройти через обычные шаги, чтобы знать, что они упрощают.
Обычно порядок установки django в виртуальной среде выглядит примерно так:
#create a virtual environment so we can add all kinds of modules etc withouth breaking our default environment.
# c:\dir could be any directory path we want to start in.
# myvenv is the name of our new virtual directory
c:\dir python -m venv myvenv
#activate that virtual enironment and start it up - this puts us inside the new env
c:\dir myvenv\Scripts\activate
# now we are in the virtual environment (we can tell by the venv's name in brackets)
# we can install the latest pip
(myvenv) ~$ python -m pip install --upgrade pip
# With pip we can install django, specifying the version
(myvenv) ~$python -m pip install Django==2.1
# we can check that this worked
(myvenv) ~$ python -m django --version
# Now, still in the virtual env, we create our project
(myvenv) ~$ django-admin startproject vidly6
Не забывайте, что если вы покинете venv, вам нужно будет снова активировать его для добавления модулей или выполнения команд manage.py, а также, что вы можете определить, что находитесь в venv, по (venvname) в скобках в командной строке. Похоже, что вы используете vscode, поэтому после создания вы можете активировать свой venv с помощью комбинации клавиш - более подробная информация здесь: https://code.visualstudio.com/docs/python/environments