2013-05-04 45 views
5

我试过在rails4应用程序使用IR,但我的代码permitted_pa​​rams - rails4和inherited_resources

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:我已经试过以下普罗蒂普http://blog.josemarluedke.com/posts/inherited-resources-with-rails-4-and-strong-parameters但4.0rc1它不工作:(

+0

取代的Gemfile你能后的PARAMS?你有没有尝试过params.require(:workspace).permit(:name,:owner_id)? – John 2013-05-06 06:18:20

+0

我遇到同样的问题。你解决了吗? – 2013-06-14 08:34:11

+0

这是rails 4.0.0 final的首选解决方案吗?我已经检查了问题跟踪器,但在使用inherited_resources时没有看到如何摆脱protected_attributes的确切方法。 – 2013-07-02 21:39:55

回答

5

我有同样的问题

你需要把permitted_pa​​rams方法public方法在你的控制器类。这不是一个私有方法。

我希望这帮助。

2

我有太多迎接这一问题,但似乎并没有和你一样,只是把我该怎么解决这情况下,一些符合同样的问题与我

与此

gem 'inherited_resources', github: 'josevalim/inherited_resources' 
+0

谢谢@william赫里,为我工作 – tardjo 2014-07-01 06:04:38