Django的工作流程框架
我一直在寻找一个框架来简化Django应用程序中相当复杂的工作流的开发。我希望能够使用该框架来自动进行状态转换,许可以及审计日志和通知之类的其他功能。
我已经看到了有关同一主题的一些较旧的信息,但在过去的2-3年中所涉及的信息不多。我听说过的主要选择是GoFlow(自2/2009开始不更新)和django-workflow(似乎更活跃)。
有没有人使用过这些软件包?它们是否成熟和/或与现代(1.3)Django兼容?还有其他值得考虑或更好地支持的选择吗?
回答:
让我在这里做一些说明,因为我是django-fsm和django-viewflow的作者,这两个项目可以称为“工作流库”。
工作流词本身有点高估。不同种类的库和软件可以称自己为“工作流”,但功能各不相同。共同点是工作流将某个过程的步骤连接成一个整体。
一般分类
如我所见,工作流实施方法可以分类如下:
单/多用户
-工作流库是自动执行单用户任务还是具有权限检查/任务分配选项。顺序/并行
-顺序工作流只是状态机模式的实现,并且允许同时具有单个活动状态。并行工作流允许一次执行多个活动任务,并且可能具有某种并行同步/联接功能。显式/隐式
-无论工作流是表示为单独的外部实体,还是被编织到其他类别中,其主要职责都是不同的。静态/动态
-静态工作流只用python代码实现一次,然后执行,通常可以通过更改工作流数据库表的内容来配置动态工作流。静态工作流通常可以更好地与其他django基础结构(例如视图,表单和模板)集成在一起,并且可以通过类继承之类的常用python结构更好地进行自定义。动态工作流假定您具有可以适应任何工作流运行时更改的通用界面。其中,前两个可以看作是渐进的差异,但其他两个是根本的。
以上是 Django的工作流程框架 的全部内容, 来源链接: utcz.com/qa/433540.html