您好, 欢迎来到 !    登录 | 注册 | | 设为首页 | 收藏本站

如何以编程方式创建Django ViewFlow流程

如何以编程方式创建Django ViewFlow流程

有两个附加的Start内置任务可用于Flows

StartFunction-当函数在某处调用时开始流程:

@flow_start_func
def create_flow(activation, **kwargs):
    activation.prepare()
    activation.done()
    return activation

class FunctionFlow(Flow):
    start = flow.StartFunction(create_flow) \
        .Next(this.end)

# somewhere in the code
FunctionFlow.start.run(**some_kwargs)

StartSignal-在django信号接收上开始流:

class SignalFlow(Flow):
    start = flow.StartSignal(some_signal, create_flow) \      
        .Next(this.end)

您可以在此viewflow测试套件中检查它们的用法以及其余的内置任务。

要手动处理任务状态,首先应该从数据库获取任务,将其激活,然后调用任何激活方法

task  = MyFlow.task_cls.objects.get(...)
activation = task.activate()
if  activation.undo.can_proceed():
    activation.undo()

任何激活过渡都有.can_proceed()方法,可以帮助您检查,是处于允许过渡状态的任务。

Go 2022/1/1 18:24:53 有312人围观

撰写回答


你尚未登录,登录后可以

和开发者交流问题的细节

关注并接收问题和回答的更新提醒

参与内容的编辑和改进,让解决方法与时俱进

请先登录

推荐问题


联系我
置顶