Django 中的多用户、并行和动态工作流程

问题描述 投票:0回答:2

我正在根据这个要求寻找在Django(Django-Rest-Framework)中开发工作流引擎的最佳解决方案:

  • 权限检查/任务分配选项
  • 并行工作流程允许同时执行多个活动任务,并且可能具有某种并行同步/连接功能
  • 动态工作流程通常可以通过更改工作流程数据库表的内容来配置

我发现的方法:

  • 一种方法是 BPMN 引擎,并使用 SpiffWorkflow 包(这是纯 python 而不是 Django)
  • 另一种方法是使用 camunda API(可能会产生限制)
  • 或者使用基于 Django 的工作流程包,但我没有找到支持多用户(权限)和并行及动态工作流程的包

这个问题的最佳解决方案是什么?

python django bpmn
2个回答
0
投票

我通过 django goflow 包解决了这个问题(github)。 这个包支持:

  • 按用户组进行权限检查
  • 将任务分配给特定用户或组(推拉策略)
  • 动态设计允许更改工作流程步骤、转换、权限...
  • 独占网关(异或网关)和并行网关(并网关)
  • 任何类型的事件(消息、计时器、错误...)

0
投票

意识到这是一张旧票,但想指出的是,过去 2 年我们一直在 在 SpiffWorkflow 之上构建。我们投入了大量精力来确保 SpiffWorkflow 符合 BPMN 标准。我们保证以下功能开箱即用。

  • 完整的权限系统以及将任务分配给特定用户或组的能力。
  • 并行网关 - 以及同时运行许多活动任务的能力 - 以及允许编排许多并行流程的 BPMN 消息 - 控制和同步其他工作流程的工作流程。
  • 允许创建复杂数据集的数据存储和数据对象,这些数据集可以在流程实例之间战略性地共享。
© www.soinside.com 2019 - 2024. All rights reserved.