2013-05-04 8 views
5

ho cercato di utilizzare IR rails4 app, ma il mio codicepermitted_params - rails4 e inherited_resources

class WorkspacesController < InheritedResources::Base 

    private 

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

solleva eccezione ActiveModel :: ForbiddenAttributesError.

lo stesso problema con seguente codice

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

Cosa c'è di sbagliato con questo codice?

PS:. Ho provato a seguito PROTIP http://blog.josemarluedke.com/posts/inherited-resources-with-rails-4-and-strong-parameters ma con 4.0rc1 non funziona :(

+0

Puoi pubblicare i params? Hai provato params.require (: workspace) .permit (: name,: owner_id)? – John

+0

Sto avendo lo stesso problema. L'hai risolto? –

+0

Questa è la soluzione preferita per rails 4.0.0 finale? Ho controllato il tracker dei problemi ma non ho visto alcun approccio definitivo su come sbarazzarsi di protected_attributes quando si utilizzano inherited_resources. –

risposta

5

Ho avuto lo stesso problema

è necessario mettere permitted_params metodo come metodo pubblico nel controller di classe. non è un metodo privato.

Spero che questo aiuto.

2

devo incontrare anche questo problema, ma non sembrano uguali ai suoi, basta mettere come risolvo questo nel caso in cui qualche incontrare lo stesso problema con la mia

sostituire Gemfile con questo

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

grazie @william Herry, lavora per me – tardjo

Problemi correlati