【发布时间】:2012-07-27 22:31:44
【问题描述】:
我们需要在控制器中使用 FormBuilder.new 创建一个表单构建器对象。这是我们现在正在做的事情:
@f = ActionView::Helpers::FormBuilder.new(:invoice, @invoice, self, {}, proc {} )
有一个错误说:
ActionView::Template::Error (undefined method `fields_for' "invoiceController.."
我们认为 @f 不是表单构建器对象,这就是为什么 fields_for 无法识别的原因。问题似乎与定义中的当前视图的 self 参数有关。使用 FormBuilder 构建表单构建器对象的正确方法是什么?谢谢。
【问题讨论】:
-
通过将@f 的定义放在同一个js.erb 文件中解决了这个问题。不知道为什么。
标签: javascript jquery ruby-on-rails ruby-on-rails-3