При использовании strong_params и получении исключения ActiveModel::ForbiddenAttributesError
, как узнать, какой атрибут запрещен? Я только что переключился с attr_accessible
, и отладочное сообщение обычно было довольно хорошим, но не при переключении на сильные параметры.Как найти атрибут при получении ActiveModel :: ForbiddenAttributesError
Я получаю эту ошибку:
ActiveModel::ForbiddenAttributesError in SnippetsController#create
это вложенная модель.
def snip_params
params.require(:snippet).permit(:content, :approved, :user_id, :book_id)
end
В родителю я использовал
has_nested_attributes :snippets
создать
def create
@snippet = @book.snippets.create(snip_params)
@snippet.user = current_user
if @snippet.save
redirect_to @book
flash[:success] = "Snippet submitted and awaiting approval."
else
flash[:base] = "Someone else has submitted a snippet, please try again later"
redirect_to @book
end
end
Params Содержание:
{"utf8"=>"✓",
"authenticity_token"=>"bTRSwFRIhN3l3DkkWPtLzpoQHYD+CezmJQLw8Oz5+3g=",
"snippet"=>{"content"=>"<p>AAAAAAAAAAAAA</p>\r\n"},
"commit"=>"Create Snippet",
"book_id"=>"1"}
Мне кажется, вы можете увидеть предупреждение в журнале со списком параметров – gotva