在rails中删除多个项目的其他方法是什么?

时间:2015-11-19 13:47:59

标签: ruby-on-rails ruby

如何通过将多个值传递给REST API来删除rails中的多个记录? 我目前的路线如下:

products DELETE /products/:id(.:format)   products#destroy

当我尝试将多个值作为数组传递(DELETE / products / [ids])时,它表示路由不存在。

2 个答案:

答案 0 :(得分:2)

如果你这样做会传递一组id并使用destroy_all

Product.where(id: params[:ids]).destroy_all

答案 1 :(得分:1)

经过大量研究,我找到了一种方法,通过将id作为逗号分隔值传递给REST api来删除多个记录。

你已经像这样调用了API

DELETE /products/id1,id2,id3 

现在处理控制器中的业务逻辑

Product.where(id: params[:id].split(',')).destroy_all