Ruby on rails rails 5 API;更新单个记录
有人能告诉我如何使用Rails5API更新表中的单个记录吗 对于eg;我需要更新行ID为5的quantity字段。我希望按如下方式传递URL中的值:Ruby on rails rails 5 API;更新单个记录,ruby-on-rails,Ruby On Rails,有人能告诉我如何使用Rails5API更新表中的单个记录吗 对于eg;我需要更新行ID为5的quantity字段。我希望按如下方式传递URL中的值: localhost/items_list/5/qty/1 我的更新控制器类似于: @order_item = OrderItem.find(params[:id]) @order_item.update_attribute(:qty,params[:qty]) 路由应该如何查找此项?首先,您需要定义路由,以便它接收您将作为参数发送的值,可能类似
localhost/items_list/5/qty/1
我的更新控制器类似于:
@order_item = OrderItem.find(params[:id])
@order_item.update_attribute(:qty,params[:qty])
路由应该如何查找此项?首先,您需要定义路由,以便它接收您将作为参数发送的值,可能类似于:
put 'item_list/:id/qty/:qty', to: 'item_list#edit' # depending on the controller's name and action
这将定义您的路线,以期望项目列表id
和数量
用作更新记录的值
然后在控制器中,您可以使用find
获取要更新的特定元素,然后传递params[:id]
以使用params[:qty]
的值更新属性:
@order_item = OrderItem.find(params[:id]).update(qty: params[:qty])
尝试将“项目列表/:id/qty/:qty”张贴到:“您的控制者”或“资源:项目列表”;杜议员;张贴“数量/:数量”;结束;谢谢,这很有效。不得不把它从get改为PUT。谢谢你的帮助。