在 PythonAnywhere 上将 Django 管理命令作为始终开启任务运行的问题

问题描述 投票:0回答:1

我在 PythonAnywhere 上构建并部署了我的 Django 网站。

我的里面有一个脚本

app/management/commands/my_command.py

我打算一直跑步。我尝试使用 PythonAnywhere Always On Task 功能来实现此目的,但状态从未从“开始”更改为“正在运行”。

脚本本身没有问题,因为当我运行时:

bash
(venv) $ source /home/myusername/.virtualenvs/myenv/bin/activate && cd /home/myusername/myproject && python manage.py my_command

脚本成功运行,然后当我转到“Always On Task”控制台时,我看到它成功运行并记录在该控制台中。

但问题是我不想总是在 Bash 控制台中手动运行它。

我已按照 PythonAnywhere 帮助页面上的说明进行操作,并将任务命令更改为我可以使用的所有选项。我试过:

bash
source virtualenvwrapper.sh && workon myenv && python /home/myusername/myproject/manage.py my_command

但它永远不会变成“跑步”。

我也尝试过:

bash
/home/myusername/.virtualenvs/myenv/bin/python /home/myusername/myproject/manage.py my_command

再次强调,它永远不会变成“跑步”。

但是,如果我在 Bash 控制台中运行脚本,Always On 任务会打印出我的成功消息!

我做错了什么?

python django pythonanywhere
1个回答
0
投票

如果任务卡在“正在启动”状态,很可能一启动就崩溃了。找出原因的最简单方法是查看任务日志 - 您可以从“操作”列中的第一个按钮访问该日志。

始终专注于任务

© www.soinside.com 2019 - 2024. All rights reserved.