こんにちは。
Laravelでショッピングカートを作っています。ショップがたくさんあり、各ショップのページには**http://localhost:8000/menu/1**のように、最後尾のidを指定することでアクセスできます。
わからない点なのですが、商品カートのページのurlは**http://localhost:8000/cart**という風になっているため、このページにショップに戻るというリンクをつけたい場合はどうしたらよいのかがわかりません。**/menu/{user}**のような形式にすればいいのはわかるのですが、どこからidを取得すればよいのかがわかりません。コントローラーから送ればよいのかなとは思うのですが、方法がわかりませんでした。
解決法ご存知の方いらっしゃいましたらご教授ください。
よろしくお願いいたします。
以下、コントローラーのコードです。
php
1<?php 2 3namespace App\Http\Controllers; 4 5use App\Product; 6use App\Models\User; 7use Illuminate\Http\Request; 8 9class CartController extends Controller 10{ 11 public function shop($user) 12 { 13 $user = User::findOrFail($user); 14 return view('shop')->withTitle('E-COMMERCE STORE | SHOP')->with(['user' => $user]); 15 16 // $products = Product::all(); 17 // return view('shop')->withTitle('E-COMMERCE STORE | SHOP')->with(['products' => $products]); 18 } 19 20 public function cart() 21 { 22 $cartCollection = \Cart::getContent(); 23 //dd($cartCollection); 24 return view('cart')->withTitle('E-COMMERCE STORE | CART')->with(['cartCollection' => $cartCollection]); 25 } 26 27 public function add(Request $request) 28 { 29 \Cart::add(array( 30 'id' => $request->id, 31 'name' => $request->name, 32 'price' => $request->price, 33 'quantity' => $request->quantity, 34 'attributes' => array( 35 'image' => $request->img, 36 'slug' => $request->slug 37 ) 38 )); 39 return redirect()->route('cart.index')->with('success_msg', 'Item is Added to Cart!'); 40 } 41 42 public function remove(Request $request) 43 { 44 \Cart::remove($request->id); 45 return redirect()->route('cart.index')->with('success_msg', 'Item is removed!'); 46 } 47 48 public function update(Request $request) 49 { 50 if($request->quantity == 0){ 51 \Cart::remove($request->id); 52 }else{ 53 54 \Cart::update( 55 $request->id, 56 array( 57 'quantity' => array( 58 'relative' => false, 59 'value' => $request->quantity 60 ), 61 ) 62 ); 63 } 64 $cartCollection = \Cart::getContent(); 65 $returnHTML = view('update_cart')->with(['cartCollection' => $cartCollection])->render(); 66 return response()->json(array('success' => true, 'html'=>$returnHTML)); 67 68 69 70 } 71 72 public function clear() 73 { 74 \Cart::clear(); 75 return redirect()->route('cart.index')->with('success_msg', 'Car is cleared!'); 76 } 77} 78
回答2件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。