【问题标题】:Django celery beat scheduler not working at Asia/Calcutta timezoneDjango celery beat scheduler 在亚洲/加尔各答时区不起作用
【发布时间】:2020-08-11 13:43:19
【问题描述】:

我正在使用 Django celery beat 和 celery,

当我使用 Django-celery-beat 提供的调度程序时,我面临的问题是它不起作用,但是使用没有 Django-celery-beat 提供的调度程序的正常节拍可以使用以下命令

不起作用 => celery worker --app=my_project.celery_app -l info --beat --scheduler django_celery_beat.schedulers:DatabaseScheduler

作品 => celery worker --app=my_project.celery_app -l info --beat

当我将 Time_Zone 更改为 'UTC' 时我注意到的一件事 Django-celery-beat 调度程序开始工作,但我不想更改 djagno 的时区设置我该如何解决这个问题

请在下面找到我的设置

USE_TZ = False
TIME_ZONE = 'Asia/Kolkata'
CELERY_TIMEZONE = 'Asia/Kolkata'

【问题讨论】:

  • "...当我更改 Time_Zone .....",只是为了确认,TIME_ZONECELERY_TIMEZONE?
  • 时区,不是芹菜时区

标签: django celery django-celery celerybeat django-celery-beat


【解决方案1】:

你可以试试这个:

celery -A my_app.celery:app beat -l info --scheduler django_celery_beat.schedulers:DatabaseScheduler

另外,请确保您已安装 django_celery_beat 并将其添加到您的 settings.py

INSTALLED_APPS = (
    ...,
    'django_celery_beat',
)

然后python manage.py migrate

here你可以找到更多的节拍配置。

【讨论】:

    【解决方案2】:

    我敢肯定,一定有办法做到这一点,

    但是,我建议您不要在 Django 中使用 tz=False,因为每个标准应用程序都可以识别时区,并且默认使用 UTC,无论您是在印度还是任何其他国家/地区都没有关系

    如果您遇到任何与 UTC 相关的错误,请随时在此处提问,希望它能让您的应用程序变得更好

    附言。即使您想查看其他库,请查看以下库

    https://pypi.org/project/django-celery/

    【讨论】:

      猜你喜欢
      • 2018-08-31
      • 2021-01-24
      • 1970-01-01
      • 2018-01-11
      • 2021-10-21
      • 1970-01-01
      • 2020-10-28
      • 1970-01-01
      • 2014-03-21
      相关资源
      最近更新 更多