我正在尝试为我的Django应用程序运行manage.py makemigrations,并且收到“无法导入Django”消息。
我知道venv的工作原理,并且我确定我的环境包括Django。见下文;我尝试运行manage.py(遇到错误),然后运行$ django-admin --version,它显示了Django的版本。
(venv) emmett@emmett-HP:~/PycharmProjects/onramp_crm$ sudo python manage.py makemigrations contacts
Traceback (most recent call last):
File "manage.py", line 18, in <module>
"Couldn't import Django. Are you sure it's installed and "
ImportError: Couldn't import Django. Are you sure it's installed and available on your PYTHONPATH environment variable? Did you forget to activate a virtual environment?
(venv) emmett@emmett-HP:~/PycharmProjects/onramp_crm$ django-admin --version
2.0.9
(venv) emmett@emmett-HP:~/PycharmProjects/onramp_crm$
这是使用Pycharm Pro版本的django-cookiecutter项目。我删除了onramp_crm / venv文件夹,并完全重新安装了venv,并在Pycharm中设置了新的解释器。注销并重新启动Ubuntu,重新启动Pycharm,我能想到的一切。
答案 0 :(得分:3)
从sudo
中删除sudo python manage.py makemigrations contacts
。
使用sudo
将使用您的系统版本的Python,该版本似乎未安装Django。如果没有sudo
,您将使用具有Django的venv。