Rails 5 API;更新单一记录



有人可以让我知道如何使用Rails 5 API在表中更新单个记录。

例如;我需要更新具有5的行ID的数量字段。

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

这正在定义您的路线,以期期望Item_list idquantity用作更新记录的值。

然后,在您的控制器中,您可以使用find获取要更新的特定元素,然后传递params[:id]以使用params[:qty]的值更新属性:

@order_item = OrderItem.find(params[:id]).update(qty: params[:qty])

最新更新