2011-09-01 68 views
0

在Rails中处理基于对话的Web流的最佳方式是什么?我想知道是否有任何类似http://grails.org/doc/1.0.x/guide/single.html#6.5%20Web%20Flow在Rails中使用Grails/Spring Web Flow


一个Web Flow是跨越多个请求和流动的范围保持状态的会话。 Web流程还具有定义的开始和结束状态。

Web流不需要HTTP会话,而是以序列化形式存储它们的状态,然后使用Grails传递的流程执行键作为请求参数进行恢复。这使得流程远比使用HttpSession及其继承内存和集群问题的其他形式的有状态应用程序更具可伸缩性。

Web流程本质上是一个高级状态机器,用于管理从一个状态到下一个状态的执行的“流程”。由于状态是为您管理的,因此您无需担心如何确保用户在多步骤流程中输入操作,因为Web流程会为您管理该操作。这使得Web流程完美适用于购物车,酒店预订和任何具有多页面工作流程的应用程序。

回答

0

我刚开始自己​​研究这个问题,但是从DRYing视图代码的角度来看。没有找到太多,但有:

https://github.com/jcoglan/action_flow这可能需要一些正在调整为新的Rails

http://rubyforge.org/frs/?group_id=2769它没有文档,看起来阿尔法

每个项目的年龄和活动水平使我相信他们被遗弃了。

通过路线/控制器/动作/视图建立命令式呼叫的点对点链接,这些路线/控制器/动作/视图对链条落在何处做出固定假设(或者更糟糕的是,引入大量条件来处理不同的流程) ,肯定是我看到它完成的一种方式。仍然想知道这是否是Rails世界中的首选股票交易,或者是否有其他成语可以代替它,我只是不知道。