【发布时间】:2011-03-18 15:33:24
【问题描述】:
我来自 Asp.Net MVC 世界,我很困惑如何从模型角度处理 Rails 3 表单。 在 Asp.Net MVC 中,绑定到模板中的业务模型表单是一种不好的做法。正确的方法是为每个表单创建一个类,创建仅在表单中需要的属性并将验证属性附加到它们。然后在代码中检查 ModelState.IsValid 并将值从表单模型分配给业务模型。这会导致概念分离并防止属性劫持(当黑客可能将附加值与适当的值一起发布并以他残忍的方式更改业务模型属性时)。
从我读过的所有教程和书籍中,Rails 世界中没有分离出这个概念 - 您将验证放入您的业务模型中,并将您的模型绑定到模板中的表单。
这是 Rails 3 中的正确方法吗?我应该遵循它吗?或者我应该遵循 Asp .Net MVC 方法并为表单创建一个单独的带有验证的模型?
【问题讨论】:
标签: ruby-on-rails-3 forms model