Как изменить часовой пояс сельдерея в models.py из django - PullRequest
0 голосов
/ 24 марта 2020

я создаю периодические c задачи для чего-то в models.py в django, но когда я запускаю его в UT C часовом поясе, как я могу изменить часовой пояс

class TimeSend(models.Model):
user = models.ForeignKey(UserMail,on_delete=models.CASCADE,null=True)
hour = models.CharField(max_length=10,blank=True,null=True)
minute = models.CharField(max_length=10,blank=True,null=True)
status = models.BooleanField(default=True)

def __str__(self):
    return self.user.user_mail

def set_periodic_task(self,task_name):
    schedule = self.get_or_create_crontab()
    PeriodicTask.objects.create(
        crontab=schedule,
        name=f'{self.user.user_mail}-{self.user.id}',
        task=task_name,
        kwargs=json.dumps({
            'recepient': self.user.user_mail,
        })
    )
    def get_or_create_crontab(self):
    schedule, created = CrontabSchedule.objects.get_or_create(
        minute=self.minute,
        hour=self.hour,
        day_of_week='*',
        day_of_month='*',
    )
    return schedule

в settings.py я уже меняю часовой пояс

TIME_ZONE = 'Asia/Bangkok'
USE_I18N = True
USE_L10N = True
USE_TZ = True
CELERY_TIMEZONE = 'Asia/Bangkok'
CELERY_ENABLE_UTC = False
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...