批量操作
[{a:av1, b:bv1, c:cv1},{a:av2, b:bv2, c:cv2},{a:av3, b:bv3, c:cv3}]
{data: [{a:av1, b:bv1, c:cv1},{a:av2, b:bv2, c:cv2},{a:av3, b:bv3, c:cv3}]}
如何使用 strong params 处理传入的参数?
params.require(:product).permit(:name, tags: [])
strong_params 还是弱了一点,hanami-validation 或者 dry-validation 对于参数的 sanitize 和验证更强。
#2 楼 @novtopro 谢谢回复,我去看看 hanami,顺便一提,第一条回复对于我的这种形式是无效的。(或者是我调用问题) tags 里面还是数组,等于是我要对数组的数组中的元素进行 permit...
#2 params.permit(:data => [[:a, :b]])
#4 楼 @matrixbirds 我试过这种写法,但是似乎提示 RecordInvalid,不知道控制器里应该怎么写呢?
直接使用了 JSON.parse(request.body.read) 来处理形式 1 这样的数据了...
我是这么做的:
params.require(:xxx).map do |param| ActionController::Parameters.new(param.to_hash).permit(:aaa, :bbb) end