python - 有什么方法可以传递 args 值来传递 django celery 定期任务?
问题描述
我得到了某些要执行的以下任务
from apps.users.email import ConfirmationEmail
@shared_task
def send_email(receipt, **kwargs):
return ConfirmationEmail(context=kwargs).send(to=[receipt])
并在下面的函数中调用发送电子邮件。我在定期任务中传递 args 时遇到问题,因为我找不到任何关于此的文档
def _email(self):
token = RefreshToken.for_user(user=self.user_instance).access_token
# get current site
current_site = get_current_site(self._request).domain
# we are calling verify by email view here whose name path is activate-by-email
relative_link = reverse('activate-by-email')
# make whole url
absolute_url = 'http://' + current_site + relative_link + "?token=" + str(token)
self.context = {
'user': self._user.username,
'token': absolute_url
}
receipent = self._user.email
send_email.delay(receipent, **self.context)
上面的代码适用于 redis,但我想每 2 分钟发送一次电子邮件,但我在传递周期性任务作业时传递 args 感到困惑。方法是错误的还是我遗漏了什么?
解决方案
推荐阅读
- hibernate - 合并两个实体并获取数据
- ios - 为 Ionic iframe 集成应用内购买
- python - 如何在跨度矩形顶部绘制小提琴图的主体?
- c++ - C++ 技术建议中的多线程环境中从另一个线程暂停和恢复一个线程
- node.js - 我如何在 gulp 4.0 版中重写这个 gulpfile.js
- javascript - 如果已经使用同一用户控件的不同实例上传了同名文件,如何限制从用户控件的一个实例上传文件
- postgresql-11 - 如何在 postgres 中使用序列名获取表名和列名?
- python - 在 Azure Functions 中输入多个 blob
- if-statement - 将 if/else 的主体留空的约定
- symfony4 - 如何在 api-platform 的 dto 中返回输出类的数据实例