如何在Django视图中使用APscheduler安排用户定义的作业

鲨鱼皮

这个想法是允许用户向服务器提交时间/日期,以安排作业在用户指定的时间执行。

我的第一选择是在视图中执行此操作,将前端数据发布到该视图中。但是,apscheduler返回值错误。

下面是我希望用于用户计划的工作的视图片段,只是一个小测试。

class SchedulePolicyDeployView(APIView):
 def post(self, request, version):

    def test_job():
        print("cron job test")

    scheduler.start()
    scheduler.add_job(test_job, "cron", id="test_job", day="*", minute="*/1")

    return Response("job scheduled successfully")

返回的错误消息是:

ValueError: This Job cannot be serialized since the reference to its callable (<function SchedulePolicyDeployView.post.<locals>.test_job at 0x05694C00>) could not be determined. Consider giving a textual reference (module:function name) instead.
鲨鱼皮

所以我确实在代码中解决了这个问题;但自从我问了这个问题以来,它已经发生了很大的变化。我尝试将所有内容都放在这里:

*假设调度程序对象已经初始化

scheduler.py

def schedule_job(arg1, arg2, arg3, time, job_id):
    scheduler.add_job(deploy_policy, 'date', args=[arg1, arg2, arg3], run_date=datetime(int(date['year']), int(date['month']), int(date['day']), int(time['hour']), int(time['minute']), 0))
    return Response({"message": "scheduled!"})

views.py

from scheduler import schedule_job
class SchedulePolicyDeployView(APIView):
    def post(self, request, version):
        schedule_job(apic, username, password, policy_url_and_payload_result, date_dict, time_dict, payload["job_id"])
        return Response({"result": "success"})

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章

如何在默认Django Auth登录视图中使用自定义装饰器

如何在自定义视图中使用 SimpleOnGestureListener?

如何在Django视图中使用python multiprocessing模块

如何在视图中使用 django 对象

Android-如何在此列表视图中使用自定义列表视图

在Django中基于类的视图中使用post保存表单时如何保存用户

如何在我的自定义视图中使用标准属性android:text?

如何在基于类的视图中使用自定义函数

如何在ModelViewSet中的自定义视图中使用参数

如何在网络视图中使用自定义视频播放器?

如何在Laravel 5的视图中使用自定义类

如何在Android自定义视图中使用线性渐变填充路径

如何在自定义视图中使用行权重修饰符?

如何在ActionMailer视图中使用视图帮助器?

Django:如何在 UserPostList 视图中添加用户图像

如何在基于Django类的视图中访问当前用户

如何在 Django Async 视图中访问用户?

如何在Django视图中使用<li>字符串?

如何在Django视图中使用龙卷风身份验证?

如何在现有视图中使用Django密码验证?

如何在Django视图中使用.env文件中的环境变量?

如何在Django视图中使用Permission_Required装饰器

如何在django视图中使用诸如注销之类的东西?

如何在基于类的视图中使用 django REST JWT 授权和身份验证

Django - 如何在基于函数的视图中使用模型方法

如何在 django 上的列表视图中使用重定向

如何在Django视图中使用get参数重定向?

Django:如何在删除视图中使用request.POST

如何在 Django 视图中使用带有多个参数的重定向?