Javascript Rails:处理由于后退按钮或

Javascript Rails:处理由于后退按钮或,javascript,ruby-on-rails,rollback,Javascript,Ruby On Rails,Rollback,我使用的是Rails 6。假设有一家网上商店有一些商品要出售。点击支付按钮,将客户带到支付网关,需要几分钟和几步时间 我们如何防止双重付款?最佳做法是什么 我添加了一个默认为“可用”的属性“status”。单击付款按钮,将其更改为防止重复付款。现在,当用户点击后退按钮、关闭浏览器或…,处理未完成付款的最佳方式或最佳实践是什么?如何使这些项目重新可用 我知道这个问题很笼统,但我希望您能帮助我了解最佳做法和不同的可用方法。如果您想保证在用户将物品添加到购物车时保留物品,您需要在他们添加第一个物品后立

我使用的是Rails 6。假设有一家网上商店有一些
商品要出售。点击
支付
按钮,将客户带到支付网关,需要几分钟和几步时间

我们如何防止双重付款?最佳做法是什么

我添加了一个默认为“可用”的属性“status”。单击
付款
按钮,将其更改为防止重复付款。现在,当用户点击后退按钮、关闭浏览器或…,处理未完成付款的最佳方式或最佳实践是什么?如何使这些
项目重新可用


我知道这个问题很笼统,但我希望您能帮助我了解最佳做法和不同的可用方法。

如果您想保证在用户将物品添加到购物车时保留物品,您需要在他们添加第一个物品后立即创建记录。这将针对项目库存创建一个锁。然后,您需要创建一个作业,该作业将在x分钟后执行,以便在订单未完成时清除该订单。@max感谢您的评论。是的,我想用时钟,但我不确定它的效率有多高。我试试看。