【发布时间】:2014-09-04 05:37:05
【问题描述】:
这是一个关于更新现有记录的模型值的过程问题。假设我有一个用户模型。用户通过设计身份验证使用姓名和电子邮件进行注册。然后我在网站上多了两个表单来收集额外的输入。
Form 1 存储支付数据并使用 def 更新方法。假设更新方法有一些条带代码。
Form 2 只是询问用户最喜欢的颜色,并希望将其保存到模型中。表单 2 是否仍然可以使用带有一些 if 语句的 update 方法,或者我们是否需要一个指向 def color 等方法的自定义路由。
我在使用表格 2 更新模型时遇到了问题。我没有发布详细信息(已完成。还没有解决方案),我想了解最佳流程是什么。将数据插入模型应该非常简单。我想我缺少一些基本的东西。
【问题讨论】:
-
您可以为此github.com/schneems/wicked 使用多步骤表单。这包括如何构建多步表单的所有细节,也为此提供了 railscast,因此您可以轻松实现它。
-
我不认为我想要一个多步骤表单。那将是多个页面上的一种形式,对吗?我想要多个单独的表格。
-
你必须尊重 CURL 方法。如果 2 个表单将更新模型
A,您将对 2 个表单使用AsController.update方法。您可以添加的唯一if语句是在更新过程后重定向到不同的页面,将信息传递到表单的隐藏字段中。如果这2个表单更新了2个不同的模型A和B,那么分别使用AsController.update和BsController.update方法。
标签: ruby-on-rails