gpt4 book ai didi

javascript - 实现取消按钮(将订单 ID 发送到 Controller 并将订单状态属性更新为 "cancelled")的最佳方法是什么?

转载 作者:行者123 更新时间:2023-12-02 14:33:41 24 4
gpt4 key购买 nike

在订单显示页面上实现取消按钮的最佳方法是什么。取消按钮只是将 Controller 中订单的状态属性更新为“已取消”。我想将 order.id 传递给 Controller ​​,因为每个用户都有很多订单。我目前得到一个 nil:Nilclass 的未定义方法“id”,这让我认为 @order.id 没有被传递到隐藏中- field 。不确定我正在做的是将 order.id 传递到 Controller 的最佳方法&欢迎提出更好的解决方案的想法

<div>


<% @orders.each do |order| %>
<%= order.id %>
<%= order.total %>
<%= order.user.name %>

//lots of boring stuff then at the bottom of the page

<%= form_tag guest_cancel_path, method: :post do |f| %>
<input type="hidden" name="order_id" value="<% order.id %>" >
<%= submit_tag "Cancel ",class: "cancel-button btn wide" %>
<% end %>

在我的 Controller 中,我有:

def guest_cancel 
@user = current_user
@order = Order.find(params[:order_id])
@order.update(status: 'cancelled')
redirect_to guest_requests_path, notice: " the order: #{@order} by user -> #{@user} has been cancelled, "

end

然后在我的 route :

post 'guest_cancel' => 'orders#guest_cancel' 

最佳答案

看来你错过了输出它 "<%= order.id %>"

您还需要将其添加到 Controller :@order.update(status: 'cancalled')

关于javascript - 实现取消按钮(将订单 ID 发送到 Controller 并将订单状态属性更新为 "cancelled")的最佳方法是什么?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37625581/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com