使用laravel 5.3 IM和项目SHOOPING车 当我点击的项目的数量没有增加如何增加值时,按一下按钮laravel 5.3
产品控制研究
public function getAddToCart(Request $request, $id)
{
$product =Product::find($id);
$oldcart = Session::has('cart') ? Session::get('cart') : null;
$cart = new Cart($oldcart);
$cart->add($product , $product->id);
$request->session()->put('cart',$cart);
// TO show it dd($request->Session()->get('cart'));
return redirect()->route('product.index');
}
和模型车:
class Cart
{
public $items = null;
public $totalQty = 0;
public $totalPrice = 0;
public function __consruct($oldCart){
if($oldCart){
$this->$items = $oldCart->items;
$this->$totalQty = $oldCart->totalQty;
$this ->$totalPrice = $oldCart->totalPrice;
}
}
public function add($item,$id){
$storedItem = ['qty' => 0,'price' => $item->price,'item' => $item];
if ($this->items)
{
if(arrary_Key_exists($id,$this->items))
{
$storedItem = $this->items[$id];
}
}
$storedItem['qty']++;
$storedItem['price'] = $item->price * $storedItem['qty'];
$this->items[$id] = $storedItem;
$this->totalQty++;
$this->totalPrice += $item->price;
}
}
这是一个产品页面:
<a href="#"> <i class="fa fa-shopping-cart" aria-hidden="true"></i> Shopping Cart
<span class="badge">{{ Session::has('cart') ? Session::get('cart')->totalQty : '' }}</span>
</a>
它应该添加项目和增量,但它只是显示项目的id与增量它。
我试过,但仍然没有工作 – ammar
好让做两件事情。首先在getAddToCart中获取此三元运算符值并将其从刀片中删除。在过去,对于我来说,有时候三元操作员会陷入刀片模板中。其次,当你使用dd($ request-> session() - > all())欺骗整个会话时,请你分享结果。 OR print_r(session() - > all()); –