问题描述
当我在heroku中部署django应用程序时,我运行:
heroku run python3 manage.py migrate
然后我在控制台中收到此消息:
File "manage.py",line 16
) from exc
^
SyntaxError: invalid Syntax
我的manage.py文件实际上是:
#!~/.virtualenvs/djangodev/bin/python
"""Django's command-line utility for administrative tasks."""
import os
import sys
def main():
os.environ.setdefault('DJANGO_SETTINGS_MODULE','myApp3.settings')
try:
from django.core.management import execute_from_command_line
except ImportError as exc:
raise 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?"
) from exc
execute_from_command_line(sys.argv)
if __name__ == '__main__':
main()
当我运行python => python3时,显示下一条消息:
Traceback (most recent call last):
File "manage.py",line 10,in main
from django.core.management import execute_from_command_line
ModuleNotFoundError: No module named 'django'
The above exception was the direct cause of the following exception:
Traceback (most recent call last):
File "manage.py",line 21,in <module>
main()
File "manage.py",line 16,in main
) from exc
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?
解决方法
您需要先设置虚拟环境。然后在虚拟环境中安装django。您可以通过名为pipenv
的方法来完成此操作。您需要这样做将其添加到您的项目中。 python install pipenv
。然后通过执行pipenv install django
在该虚拟环境中安装python。 django安装后,您就可以进行迁移了。