Fields_for具有允许的属性

时间:2017-02-19 16:04:58

标签: ruby-on-rails ruby

我在Rails中有一个看起来像这个伪代码的表单:

<%= form_for :project do |f| %>
  <%= f.fields_for :rewards do |r| %>
    <%= r.text_field :title %>

我提供了所有工作,除非我提交表单时收到错误:Unpermitted parameter: rewards。我的权限在Project控制器中应该是什么样的?

1 个答案:

答案 0 :(得分:2)

将嵌套属性作为带有允许属性数组的哈希选项传递:

require(:project).permit(
  :foo, :bar, 
  rewards_attributes: [:title]
)

这相当于:

require(:project).permit(
  :foo, :bar, 
  { rewards_attributes: [:title] }
)