在 Mac 上,PYTHONPATH 应该设置成什么才能使用 "python manage.py run_command"?

On Mac, what should PYTHONPATH be set to in order to use "python manage.py run_command"?

我正在使用 Mac 10.13.6 和 Python 3.7。我使用 PyCharm 进行开发。虽然我可以在 PyCharm 管理控制台中正常地 运行 命令,但是当我在终端中尝试 运行 相同的命令时,我收到错误消息,抱怨我没有安装 Django。例如

localhost:mainpage_project davea$ python manage.py runstats
Traceback (most recent call last):
  File "manage.py", line 8, in <module>
    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 14, in <module>
    ) 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?

也许我错误地定义了我的 PYTHONPATH,但我将它设置为我的 Python 可执行文件

localhost:mainpage_project davea$ which python
/usr/local/bin/python

localhost:mainpage_project davea$ echo $PYTHONPATH
/usr/local/bin/python

PYTHONPATH 的值应该是多少?我能够 运行 在 PyCharm 内正常执行命令,只是在终端中才开始抛出错误。

在 pycharm 中,您安装了 Django(检查环境文件夹)。

为了在 pycharm 之外的终端中使用它,要么找到环境文件夹并激活它(来源 /bin/activate)。

如果不存在虚拟环境,请使用本指南创建一个:https://docs.python.org/3/library/venv.html

您也可以(不推荐!)在系统范围内安装它: pip 安装 django

导航到您尝试 运行 的位置,并将 PYTHONPATH 设置到该目录:

export PYTHONPATH=.

在您的终端中,您可以导航到您的 pycharm 项目 venv 文件夹并执行:

cd mainpage_project/venv
source bin/activate

然后你 运行 你的脚本:

(venv) localhost:mainpage_project davea$ python manage.py runstats

您还可以安装 python 系统范围(不推荐),然后 运行 您的脚本:

pip install django

然后你 运行 你的脚本:

localhost:mainpage_project davea$ python manage.py runstats