我正在创建一个带有laravel 5.3的在线商店,我希望当用户点击添加产品将其添加到购物车中时 我试图用控制器中的会话来做它,但它给了我Class' App \ Http \ Controllers \ Session'找不到错误 这是我的代码 视图:
<a href="checkout">
<h3> <div class="total">
<i class="glyphicon glyphicon-shopping-cart" aria-hidden="true"></i>
<span>
@if(Session::has('price'))
{{ Session::get('price') }}lv
@else
0.00lv
@endif
</span> (<span id="simpleCart_quantity" class="simpleCart_quantity"></span> products)</div>
</h3>
</a>
路由:
Route::get('add-product/{id}', 'ProductsController@add')->name('add-product');
ProductsController:
public function add($id)
{
$product = Product::find($id);
if (Session::has('price')) {
$price = Session::get('price');
$price += $product->product_price;
Session::put('price', $price);
}
else {
Session::put('price', $product->product_price);
}
return redirect()->back();
}
我不知道这是不是正确的方法,但我不知道它是如何完成的,如果有人能说出正确的方式,我会非常乐意听到它们< / p>
答案 0 :(得分:0)
您可以使用Laravel Helper方法(session
)来使用会话类,而不会像这样导出它们:
查看:
<a href="checkout">
<h3> <div class="total">
<i class="glyphicon glyphicon-shopping-cart" aria-hidden="true"></i>
<span>
@if(session()->has('price'))
{{ session()->get('price') }}lv
@else
0.00lv
@endif
</span> (<span id="simpleCart_quantity" class="simpleCart_quantity"></span> products)</div>
</h3>
</a>
控制器:
public function add($id)
{
$product = Product::find($id);
if (Session::has('price')) {
$price = session()->get('price');
$price += $product->product_price;
session()->put('price', $price);
}
else {
session()->put('price', $product->product_price);
}
return redirect()->back();
}
希望这有帮助
答案 1 :(得分:0)
查看This amazing package非常好实施。我已成功使用on this shopping cart.