2013-05-04 4 views
5

Я пытался использовать ИК в rails4 приложение, но мой кодpermitted_params - 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:. Я попытался следующие protip http://blog.josemarluedke.com/posts/inherited-resources-with-rails-4-and-strong-parameters но с 4.0rc1 он не работает :(

+0

Вы можете разместить Params? Вы пробовали paramsrequire (: workspace) .permit (: name,: owner_id)? – John

+0

У меня такая же проблема. Вы решили это? –

+0

Является ли это предпочтительным решением для рельсов 4.0.0 final? Я проверил отслеживание проблем, но не видел окончательного подхода к тому, как избавиться от protected_attributes при использовании inherited_resources. –

ответ

5

У меня была такая же проблема

Вам нужно положить permitted_params метод как общедоступный метод в контроллере класс. это не частный метод.

Я надеюсь, что это поможет.

2

меня решить эту проблему тоже, но, кажется, не такой же, как ваша, просто положить, как я решить эту проблему в случае, если некоторые отвечают те же проблемы с моим

заменить Gemfile с этим

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

спасибо @william Herry, работает для меня – tardjo

Смежные вопросы