0
在我们的rails
应用程序中,某些model
可能需要approval process
。例如,对于purchasing order (PO)
,通常从提交PO
开始,然后经理批准并且首席执行官批准PO
可以发送给供应商。审批程序可能是预定义的。随着approval process
,我们也想为每一个过渡记录数据:Rails:状态机是否足够用于审批流程?
1. who did it (use id),
2. when she/he did it (time stamp)
3. comment by approval person (usually text).
4. approval process can be attached to the model late on demand.
有不少state machine
ruby gem
那里(如state machine
)。我们的问题是:状态机是否足以满足上述要求?
非常有趣!有一个叫ruote的工作流程宝石。工作流程和ruote有什么区别? – user938363
我们可以指定谁可以在流程定义中做什么?谁可以是一个用户或一组用户。什么是触发转换的事件。 – user938363
我以前没有用过ruote。他们从他们的文件中宣称:“Ruote的定位是持久性/可修改性,而不是像常规口译员那样的短暂性/表现性”,其目的在于长期运行的流程。虽然工作流更像是有限状态机。 –