【问题标题】:Django: Celery import causes error while executing cron commandsDjango:执行 cron 命令时,Celery 导入导致错误
【发布时间】:2013-10-13 17:39:39
【问题描述】:

最近在 django 上安装了 celery,它工作正常,但我意识到我的 cron(我的意思是通常的 cron,而不是 celery 的周期性任务)命令没有执行。 我的 cron 中有这样的行:

sudo -u someuser python /home/someuser/django_proj/manage.py somecommand --settings=someapp.settings

而且效果很好。但是如果我在settings.py中添加“import djcelery”,就会出现这个错误:

Unknown command: 'somecommand'
Type 'manage.py help' for usage.

我做错了什么? 附:我知道,celery 有周期性任务,但是我现在不能使用这个功能。

另外,我有“common_settings.py”文件,而 someapp/settings.py 有这个代码:

from common_settings import *

如果我将“import djcelery”添加到 common_settings.py 我会得到这个:

错误:在包含“/home/someuser/django_proj/manage.py”的目录中找不到文件“settings.py”。看来您已经定制了一些东西。您必须运行 django-admin.py,将其传递给您的设置模块。 (如果文件 settings.py 确实存在,它会以某种方式导致 ImportError。)

它试图在 django_proj 文件夹中查找设置,但我这里没有任何设置。

【问题讨论】:

    标签: python django cron celery


    【解决方案1】:

    看起来,您的应用程序安装不正确。例如,您可能忘记了 INSTALLED_APPS 中的逗号,并且您之前的应用程序在 django 启动时没有激活。 没有任何理由让它坏掉。

    【讨论】:

    • 感谢您的回复。我不确定这个错误是因为逗号还是其他原因而发生的。 “ok”设置文件和“broken”设置文件的区别在于“broken”文件有“import djcelery”,仅此而已。
    猜你喜欢
    • 1970-01-01
    • 2011-04-30
    • 2023-03-26
    • 1970-01-01
    • 1970-01-01
    • 2020-07-05
    • 2013-02-10
    • 2023-03-10
    • 1970-01-01
    相关资源
    最近更新 更多