gpt4 book ai didi

Django 自定义管理命令有时工作,有时不工作,具体取决于路径

转载 作者:行者123 更新时间:2023-12-04 19:04:24 26 4
gpt4 key购买 nike

这个故事发生在 Ubuntu linux 10 和 python 2.6.5 下。

我在我的 django 项目调用中创建了一个新的自定义命令 taskserver .

当我在项目目录(即 /opt/acme/python-site/acme/ 并执行

python manage.py taskserver

自定义命令已正确启动。

当我在 /opt/acme/以下命令执行我的自定义 taskserver命令:
python /opt/acme/python-site/acme/manage.py taskserver

当我在 /opt/acme/deploy/以下命令(与上面相同)无法执行我的自定义 taskserver命令:
python /opt/acme/python-site/acme/manage.py taskserver

它提示说:
Unknown command: 'taskserver'  
Type 'manage.py help' for usage.

即使我指定了 manage.py 文件的完整路径,知道为什么当前位置很重要吗?我需要从部署目录中的结构脚本运行此命令。关于如何使这项工作的任何建议?

最佳答案

确保带有管理包的应用程序在您的 PYTHONPATH 中。例如,如果 taskserver.py 在 /opt/acme/python-site/acme/management/commands/taskserver.py

env PYTHONPATH=$PYTHONPATH:/opt/acme/python-site/acme python /path/to/manage.py taskserver

通常,指定 manage.py 的完整路径不一定会设置您的 PYTHONPATH。正确。

Fabric 也可能有自己的设置 PYTHONPATH 的方法。环境变量,我不记得了。但是使用 env无论如何都应该工作。

关于Django 自定义管理命令有时工作,有时不工作,具体取决于路径,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8819532/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com