首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >基于单选按钮的结帐表格计算- Laravel 5.2

基于单选按钮的结帐表格计算- Laravel 5.2
EN

Stack Overflow用户
提问于 2016-04-20 07:48:12
回答 1查看 597关注 0票数 0

我正在用laravel 5.2建立一个电子商务网站。

我可以将我的产品添加到购物车中,购物车存储在一个会话中。我可以查看我的购物车&当我点击确认时,我会进入结账页面。

购物车(按预期工作)

结帐页面上的所有项目仍然只在会话中。这是一个很好的实践吗?或者在我进入结帐页面之后,我应该把东西存储在de数据库中吗?

在我的结帐页面上,我有几个单选按钮来选择发货方法。我想根据我的选择做一个计算。处理这件事最好的方法是什么?我想避免在单选按钮下面放置一个提交按钮来确认选择。一个重要的注意事项是,我在这个页面上也有一个优惠券代码的字段,我使用get请求来计算这个字段。因此,刷新页面并不是一个真正的选择,因为我的优惠券计算将消失。

结帐页面:(单选按钮在这里)

2我能想到的两种选择:

  • 使用javascript在客户端进行计算,并添加隐藏的输入字段,以便当用户单击“确认订单”时,将其保存到数据库表中以获取订单。
  • 在购物车之后开始在de数据库中保存数据,这种方法的问题是仍然缺少很多数据。比如正确的发货/账单地址。
EN

回答 1

Stack Overflow用户

发布于 2016-04-20 09:52:40

我最近实施了类似的措施。

我有一张推车桌。

我还有一张定货单。

对我来说,将手推车存储在桌子中更有意义,因为我可以很容易地将购物车中的内容与订单联系起来。另外,我也不必担心会议即将结束,如果他们在几周后回来,他们的车仍将处于他们离开的状态。

当用户完成购买时,我用相应的order_id更新购物车表,并将其标记为完整的订单。

它在订单表中,我在那里存储账单和发货信息。

如果用户输入优惠券,我将更新购物车表中商品的价格。我使用ajax调用处理所有优惠券和发货计算,以维护页面的状态。

拥有购物车表的好处之一是在我的用户模型中,我可以定义一种关系,使我能够快速获取用户购物车中的所有项。

代码语言:javascript
复制
public function cart()
{
    return $this->hasMany('App\Cart')->where('complete', 0);
}

这样我就可以在集合中使用Laravel的sum功能

代码语言:javascript
复制
 // Get the total value of items currently in user's cart.
    $total = $user->cart->sum(function ($item) {
        return $item->price * $item->qty;
    });

希望这能给你指明正确的方向。

其他问题只要喊一声就行了。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/36737147

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档