5

我尝试在 rails4 应用程序中使用 IR,但我的代码

class WorkspacesController < InheritedResources::Base

  private

  def permitted_params
    params.permit(:workspace => [:name, :owner_id])
  end
end

引发 ActiveModel::ForbiddenAttributesError 异常。

以下代码同样的问题

  def permitted_params
    params.permit(:name, :owner_id)
  end

这段代码有什么问题?

PS:我已经尝试遵循 protip http://blog.josemarluedke.com/posts/inherited-resources-with-rails-4-and-strong-parameters但对于 4.0rc1 它不起作用:(

4

2 回答 2

6

我有同样的问题。

您需要将 allowed_pa​​rams 方法作为公共方法放在控制器类中。这不是私有方法。

我希望这会有所帮助。

于 2013-06-14T08:39:10.220 回答
2

我也遇到过这个问题,但是好像和你的不一样,只是说一下我的解决方法,以防有些人遇到同样的问题

用这个替换 Gemfile

gem 'inherited_resources', github: 'josevalim/inherited_resources'
于 2013-07-23T08:51:29.487 回答