将客人的购物车商品移动到登录用户的购物篮


move guest's shopping cart items to logged in user's basket

我正在和Laravel一起构建购物车。要求是允许人们购买商品并将其添加到购物车,当继续结账时,客户可以登录/注册或继续作为客人。我使用来宾的会话 ID 将购物车项目存储在服务器上的表上。

用户登录或创建帐户后,流行的购物车 cms 脚本如何将客人在购物篮中的商品应用到登录用户的购物篮上?最好的方法是什么。

我刚刚在亚马逊上测试了购物车行为。

  • 它会将访客购物车中的任何内容优先于存储在数据库中购物车中的任何内容。
  • 如果数据库中有任何商品不在访客购物车中,则会将其添加到合并的购物篮中。

所以例如:

  1. 数据库中的用户购物篮包含智能手机(数量设置为 3 个单位)和打印机。
  2. 作为客人,客人购物篮包含智能手机(数量 = 1)。
  3. 访客登录
  4. 购物车合并后的最后一个购物篮:
    • 智能手机 x 1(覆盖存储在数据库中的智能手机)
    • 打印机 x 1