如何在会话结束前删除购物车和 LineItems?

乔治

我正在按照本教程在我的电子商务应用程序中制作购物车:https ://richonrails.com/articles/building-a-shopping-cart-in-ruby-on-rails任何事情都做得很好,但是当会话结束和客户没有完成时订单,这个订单和订单项目仍然保存在数据库中。我的想法是使用 before_destroy session 购物车的回调方法,但我不知道究竟是什么方法 destroy session 谁能帮我?

波盎司

不幸的是,回调方法会很困难,因为您永远不知道会话何时结束,因为网站是无状态的。换句话说,你永远不会真正知道一个访客是闲着,还是他真的离开了。您通常获得的唯一标志是请求(GET/POST/PATCH/..)。

您可以做些什么来完成这项工作,即检查 last_updated 值,并在假设两个小时后删除所有未确认的购物车。或者,你甚至可以做一天,因为谁在乎呢?它在您的数据库中只有几个字节。

为了完成这项工作,您可以编写一个 rake 任务来查询和删除所有废弃的购物车。

就像是:

# cart model
class Cart
   scope :unconfirmed { where(bought: false) }
   scope :abandoned, { unconfirmed.where('last_update < ?', 1.day.ago} 
end

# rake task
namespace :maintenance do
  task delete_abandoned_carts: :environment do
    Cart.abandoned.destroy_all
  end
end

在此处了解有关 rake 任务的更多信息:https : //guides.rubyonrails.org/command_line.html#custom-rake-tasks

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

如何在lineItems上创建自定义属性

来自分类Dev

如何使用 php 客户端库从 Google DFP 访问所有 Lineitems 属性

来自分类Dev

如何从stripe.checkout.session.listLineItems请求中获取匿名aysnc函数lineItems到lambda返回响应中

来自分类Dev

筛选SalesOrder LineItems承诺数量

来自分类Dev

php购物车会话ID删除

来自分类Dev

如何在shopify ios sdk中打印购物车物品,删除购物车物品?

来自分类Dev

Rails:如何在购物车中添加“删除商品”?

来自分类Dev

如何在点击时从购物车中删除项目?

来自分类Dev

如何在迷你购物车图标上提供页面链接以查看购物车和结帐

来自分类Dev

购物车中的会话

来自分类Dev

如何从WooCommerce会话中删除特定类别的购物车项目

来自分类Dev

如何从用作会话购物车的数组中删除商品ID

来自分类Dev

从购物车会话中删除商品。拉拉韦尔

来自分类Dev

从购物车会话中删除商品。拉拉韦尔

来自分类Dev

如何在woocommerce中进行var_dump购物车会话

来自分类Dev

如何在symfony 2中管理一个简单的购物车会话?

来自分类Dev

如何在woocommerce中进行var_dump购物车会话

来自分类Dev

如何在购物车中使用 PHP 中的同名会话数组变量?

来自分类Dev

如何在购物应用中添加购物车功能?

来自分类Dev

如何在购物车更新时更新购物车中的其他属性?

来自分类Dev

如何在React中从购物车中删除两个冲突的ID?

来自分类Dev

从购物车和结帐页面删除WooCommerce订阅间隔

来自分类Dev

数量和删除购物车中的项目

来自分类Dev

如何从Woocommerce购物车中删除运送?

来自分类Dev

如何从 Woocommerce 中删除完整的购物车功能?

来自分类Dev

如何在woocommerce循环之外使用变体和购物车按钮

来自分类Dev

如何在我的购物车和结帐中显示简短说明

来自分类Dev

购物车的会话/ foreach问题

来自分类Dev

PHP购物车会话问题

Related 相关文章

  1. 1

    如何在lineItems上创建自定义属性

  2. 2

    如何使用 php 客户端库从 Google DFP 访问所有 Lineitems 属性

  3. 3

    如何从stripe.checkout.session.listLineItems请求中获取匿名aysnc函数lineItems到lambda返回响应中

  4. 4

    筛选SalesOrder LineItems承诺数量

  5. 5

    php购物车会话ID删除

  6. 6

    如何在shopify ios sdk中打印购物车物品,删除购物车物品?

  7. 7

    Rails:如何在购物车中添加“删除商品”?

  8. 8

    如何在点击时从购物车中删除项目?

  9. 9

    如何在迷你购物车图标上提供页面链接以查看购物车和结帐

  10. 10

    购物车中的会话

  11. 11

    如何从WooCommerce会话中删除特定类别的购物车项目

  12. 12

    如何从用作会话购物车的数组中删除商品ID

  13. 13

    从购物车会话中删除商品。拉拉韦尔

  14. 14

    从购物车会话中删除商品。拉拉韦尔

  15. 15

    如何在woocommerce中进行var_dump购物车会话

  16. 16

    如何在symfony 2中管理一个简单的购物车会话?

  17. 17

    如何在woocommerce中进行var_dump购物车会话

  18. 18

    如何在购物车中使用 PHP 中的同名会话数组变量?

  19. 19

    如何在购物应用中添加购物车功能?

  20. 20

    如何在购物车更新时更新购物车中的其他属性?

  21. 21

    如何在React中从购物车中删除两个冲突的ID?

  22. 22

    从购物车和结帐页面删除WooCommerce订阅间隔

  23. 23

    数量和删除购物车中的项目

  24. 24

    如何从Woocommerce购物车中删除运送?

  25. 25

    如何从 Woocommerce 中删除完整的购物车功能?

  26. 26

    如何在woocommerce循环之外使用变体和购物车按钮

  27. 27

    如何在我的购物车和结帐中显示简短说明

  28. 28

    购物车的会话/ foreach问题

  29. 29

    PHP购物车会话问题

热门标签

归档