當使用form_for([@ post,@comment])發送一個post請求到我的評論控制器時,我收到一個錯誤。創建評論。強烈的參數和嵌套的參數 - Rails 4
::加載ActiveModel在ForbiddenAttributesError#CommentsController創建
線會導致錯誤:
@comment = @post.comments.build(params[:comment])
我知道它已經降到了一個強大的參數問題,但我似乎無法得到它的權利。目前,我上崗模式是:
posts.rb
class Post < ActiveRecord::Base
has_many :comments, dependent: :destroy
end
並徵求意見:
comment.rb
class Comment < ActiveRecord::Base
belongs_to :post
end
我目前強勁的參數設置進行了點評控制器是:
comments_controller.rb
private
def comment_params
params.require(:post).permit(comment: [:name, :body])
end
最後參數,該錯誤消息被報道是:
{"utf8"=>"✓",
"authenticity_token"=>"MSX1PrrvfzYBr/DNYaMgSw3opWmaJs82xd11JfLPIqI=",
"comment"=>{"name"=>"",
"body"=>""},
"commit"=>"Create Comment",
"post_id"=>"1"}
任何人有在我的強烈PARAMS設置被破壞任何想法 - 任何想法將不勝感激。謝謝!
謝謝您的回答它的讚賞。有沒有任何指南或文檔,你會推薦我閱讀嵌套參數? – Tom
當然,請查看這裏的github頁面:https://github.com/rails/strong_parameters。 – jklina