【发布时间】:2021-04-09 08:21:43
【问题描述】:
参数如下
{
"orders"=>[
<ActionController: : Parameters{
"line_items"=>[
{
"id"=>2807935,
"segment_type"=>"DrivingSegment",
}
],
"order_id"=>484372,
"calling_order_id"=>484371
}permitted: false>
],
}permitted: false>
代码如下
def update
order_params.each do |order_param|
order = Order.find(order_param[:order_id])
order.assign_attributes({
line_items_attributes: order_param[:line_items]
})
...
end
render json: {}, status: :ok
end
def order_params
params
.require(:orders)
.permit(
line_items: %i[
id
segment_type
],
:order_id
)
end
如您所见,orders 是一个数组。每个订单都有一个订单项数组。 当我尝试 assign_attributes 我收到以下错误 undefined method `permit' for Array
知道如何在这里正确地允许参数吗??
【问题讨论】:
标签: ruby-on-rails