我需要能夠允許包含帶可變密鑰的hash
的參數。我看過其他解決方案,但似乎沒有爲我工作。Rails 4:使用可變密鑰散列的強參數
的參數如下:
{"consult_stat"=>{"iter_0"=>{"employee_id"=>"1", "consults"=>"10", "signed"=>"11"}, "iter_1"=>{"employee_id"=>"1", "consults"=>"10", "signed"=>"11"}, "iter_2"=>{"employee_id"=>"1", "consults"=>"10", "signed"=>"11"}}
...其中的iter_x
參數變化的次數。我可以硬編碼幾次迭代(見下文),但我想要一個更靈活的解決方案,根據提供的參數更改允許的參數。以下操作可達iter_5
。
params.require(:consult_stat).permit(:revenue, :weeks, :weeks_paid_up_front, :additional_weeks, :extensions, :paid_in_full, iter_0: [ :employee_id, :signed, :consults ], iter_1: [ :employee_id, :signed, :consults ], iter_2: [ :employee_id, :signed, :consults ], iter_3: [ :employee_id, :signed, :consults ], iter_4: [ :employee_id, :signed, :consults ], iter_5: [ :employee_id, :signed, :consults ])
令人驚歎。我浪費了很多時間試圖讓這個工作。我認爲是時候學習正則表達式了。一直避免它太久了 –