0

我尝试使用以下代码以编程方式而不是通过 CreateProcessView 触发新的 HelloWorldFlow(来自 ViewFlow 的演示)流程实例。但是执行代码后,我发现什么都没有保存到数据库中。


        flow_task = flow.Start()
        flow_task.flow_class = HelloWorldFlow

        act = activation.StartActivation()
        act.initialize(flow_task, None)

        # execute and save
        act.prepare()
        act.done()

当我尝试通过添加 act.process.save() 来强制保存流程时,我发现流程数据已保存但没有关联的任务(与从 UI 创建的流程实例具有关联的启动任务不同)

        # execute and explicit save
        act.prepare()
        act.process.save()
        act.done()      

我试图跟踪代码,但 StartActivation 代码中的任何地方都没有错误,因此我找不到任何错误。感谢我的任何指示,以调查为什么代码没有按预期运行。

4

1 回答 1

0

要以编程方式启动流,您需要使用 flow.StartFunction,而不是 flow.Start

http://docs.viewflow.io/viewflow_core_node.html#viewflow.nodes.StartFunction

于 2020-07-06T11:15:28.623 回答