ruby-on-rails - 如何在MVC下创建简洁,RESTful向导?

标签 ruby-on-rails asp.net-mvc model-view-controller rest

我试图在构建应用程序时尽可能地做到RESTful,但是我永远不确定的一件事就是如何创建向导式的工作流程,保持RESTful简洁。

以多页注册过程为例。

选项1:我可以为每个步骤创建一个 Controller ,并在用户进入该步骤(或回到该步骤)时调用new或edit。我以step1_controller,step2_controller等结尾。

选项2:我可以创建一个 Controller ,并使用参数, session 变量,状态机-跟踪它们在注册过程中的位置。所以我要signup_controller/step?id = 1

第一种选择严格来说是REST,但不是很简洁,并且以一些额外的 Controller 结尾。第二种选择更为简洁,但是打破了我愿意做的REST,但是我并不掉以轻心。

有更好的选择吗?

我在Rails上使用ruby工作,但是此问题适用于其他MVC实现,例如ASP.NET MVC

最佳答案

实际上,我不太关心一键式向导中维护REST的问题。我认为,REST是最重要的,具有可重复的操作-您希望该URL基本具有书签功能,以便无论何时何地都可以返回相同的数据 View 。在多步骤向导中,您将具有依赖关系,无论如何这些依赖关系都会破坏REST的这种观点。我的感觉是要有一个可能具有单独 Action 的单个 Controller ,或者使用查询参数来指示您要执行的步骤。无论如何,这就是我构造激活向导(需要多个步骤)的方式。

关于ruby-on-rails - 如何在MVC下创建简洁,RESTful向导?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/715447/

相关文章:

c# - 多个字段的 MVC 表单验证

c# - ViewBag RuntimeBinderException(MVC 4、ASPX)

java - 哪些 MVC 框架可用于 Java 桌面/winform 应用程序?

ruby-on-rails - 上限部署 - 错误 : Repository not found

asp.net-mvc - 如何将 CSS 应用于 EditorFor 字段?

java - 哪种数据格式适合将数据(左连接数据库查询的结果)从 servlet 传输到 JSP?

objective-c - 从 nib 加载时未调用 UIViewController 子类 init

jquery - 如何检查Ajax请求是否在Capybara Rspec中发送?

ruby-on-rails - 如何离线更新rails?

ruby-on-rails - bundle install/在 rails 上安装 libv8 (3.3.10.4) 时出错(在 Lion 上运行)