我在Rails 4中有一个强参数的问题,基本上我有这个参数
Parameters: {"user_id"=>"1", "attends"=>[{"survey_id"=>15, "question_id"=>67, "anwser_id"=>196}, {"survey_id"=>15, "question_id"=>68, "anwser_id"=>200}, {"survey_id"=>15, "question_id"=>69, "anwser_id"=>202}, {"survey_id"=>15, "question_id"=>70, "anwser_id"=>205}, {"survey_id"=>15, "question_id"=>71, "anwser_id"=>208}], "attend"=>{}}
在我的控制器中我有
private
def attend_params
params.permit(:user_id, :format, :attend, :attends, {:attends => []})
end
但我仍然收到此错误
Unpermitted parameters: attends, attend
在我的控制器中通过这种方式调用attend_params,不多,通过POST创建的方法传递的数据由外部应用程序提交。没有观点。
def create
logger.info "\n attend_params #{attend_params}\n"
end
任何提示? 谢谢
答案 0 :(得分:1)
试试这个
params.permit(:user_id, :format,
attend: {} ,
attends: [ :survey_id, :question_id, :anwser_id ])
<强>更新强>
正如您在附带的屏幕截图中看到的,我创建了一个请求,该请求产生相同的参数集。我故意添加一个user
param,这是不允许的,你可以看到user
参数被拒绝,其他参数都经过。您确定提供了正确的参数吗?