允许嵌套在给定参数中的任何参数
Permit any parameter nested inside a given param
我有一个这样的参数列表:
<input class="form-control" name="analysis[strengths][0]" id="swot_analysis_strengths_0" type="text">
<input class="form-control" name="analysis[strengths][1]" id="swot_analysis_strengths_1" type="text">
...
etc
然后还有
<input class="form-control" name="analysis[weaknesses][x]" id="swot_analysis_strengths_2" type="text">
<input class="form-control" name="analysis[opportunities][x]" id="swot_analysis_strengths_2" type="text">
<input class="form-control" name="analysis[threats][x]" id="swot_analysis_strengths_2" type="text">
在我的控制器中我有
params.require(:swot_analysis).permit(:strengths, :weaknesses, :opportunities, :threats)
那是行不通的。我让它工作得这么胖的唯一方法就是这样做
sanitized_params = params.require(:swot_analysis).permit(:strengths =>['0','1'], :weaknesses =>['0','1'], :opportunities =>['0','1'], :threats =>['0','1'])
但是每个阵列的成员数量会有所不同,用户可以根据需要添加和删除成员。所以我需要一种方法来简单地允许原始参数的任何子参数。
只有当它是一个数字时才允许它,但现在不是真正的优先级
这应该处理成员数组的长度:
params.require(:swot_analysis).permit(:strengths =>[], :weaknesses =>[], :opportunities =>[], :threats =>[])
http://api.rubyonrails.org/classes/ActionController/Parameters.html
我有一个这样的参数列表:
<input class="form-control" name="analysis[strengths][0]" id="swot_analysis_strengths_0" type="text">
<input class="form-control" name="analysis[strengths][1]" id="swot_analysis_strengths_1" type="text">
...
etc
然后还有
<input class="form-control" name="analysis[weaknesses][x]" id="swot_analysis_strengths_2" type="text">
<input class="form-control" name="analysis[opportunities][x]" id="swot_analysis_strengths_2" type="text">
<input class="form-control" name="analysis[threats][x]" id="swot_analysis_strengths_2" type="text">
在我的控制器中我有
params.require(:swot_analysis).permit(:strengths, :weaknesses, :opportunities, :threats)
那是行不通的。我让它工作得这么胖的唯一方法就是这样做
sanitized_params = params.require(:swot_analysis).permit(:strengths =>['0','1'], :weaknesses =>['0','1'], :opportunities =>['0','1'], :threats =>['0','1'])
但是每个阵列的成员数量会有所不同,用户可以根据需要添加和删除成员。所以我需要一种方法来简单地允许原始参数的任何子参数。
只有当它是一个数字时才允许它,但现在不是真正的优先级
这应该处理成员数组的长度:
params.require(:swot_analysis).permit(:strengths =>[], :weaknesses =>[], :opportunities =>[], :threats =>[])
http://api.rubyonrails.org/classes/ActionController/Parameters.html