【问题标题】:Rails Form Validations for Multi-Model Forms多模型表单的 Rails 表单验证
【发布时间】:2010-03-06 17:43:36
【问题描述】:

我正在尝试在一个表单中构建一个包含多个模型的 Rails 应用程序,并在一个页面上构建多个表单。为了使这项工作(根据我有限的知识),我必须退出脚手架代码和“form_for :model”帮助程序并改用“form_tag”。但是,当我这样做时,我无法在视图中自动捕获和报告表单验证错误(错误消息在 flash[:error] 中并突出显示无效字段。

如果我有一个用于必须验证来自多个模型的数据的表单的控制器方法,我如何将验证错误传递回表单?我该怎么做才能突出显示无效字段?

(很长一段时间我都没有“得到”Rails 表单,因为我认为它们是 HTML 代码的无用 Ruby 包装器。现在我在非 Rails 环境中工作,我意识到它们节省了多少工作量因为验证与 ActiveRecord 验证相关,如果验证失败,可以重新发布表单,其中无效字段突出显示并在 flash[:error] 中显示有用消息)。

【问题讨论】:

    标签: ruby-on-rails forms validation


    【解决方案1】:

    要将多个模型添加到一个简单的表单中,在 rails 2.3 之后,您只需在模型中添加 accepts_nested_attributes_for,该模型将与您的控制器和视图连接,更改视图以支持来自其他模型的信息(使用field_for) 并且可能在您的控制器中构建参考对象。检查这些链接:

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2012-08-13
      • 1970-01-01
      • 1970-01-01
      • 2013-01-11
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2010-09-26
      相关资源
      最近更新 更多