/ /複数の入力フィールドでのlaravelセッションルートリダイレクトエラー-laravel、laravel-5、eloquent

複数の入力フィールドでのlaravelセッションルートリダイレクトエラー-laravel、laravel-5、eloquent

送信を押すたびに次のコントローラーがあり、セールスにリダイレクトされます。ここで、sale.indexではなくadmin.invoice.indexページを返す必要があります。誰か助けてくれませんか?

  $data = array();
for ($i=0; $i < count($request["product_id"]); ++$i)
{
$sales= new Sale;
$sales->product_id = $request["product_id"][$i];
$sales->qty= $request["qty"][$i];
$sales->user_id = Auth::user()->id;
$sales->save();
$product = new Product;
$product->where("id", "=", $request["product_id"][$i])->decrement("stock", $request["qty"][$i]);
$data[]["sales"] = $sales;
$data[]["product"] = $product;

}

$data = [];
if ($request->session()->has("data")) {
$data = $request->session()->get("data");


}
Session::flash("success", "Sale is successfully");
return view("admin.invoice.index")->with("data", $data);

}

回答:

回答№1は2

パス data 〜と with() を通して session.

{
$data = array();
for ($i=0; $i < count($request["product_id"]); ++$i)
{
$sales= new Sale;
$sales->product_id = $request["product_id"][$i];
$sales->qty= $request["qty"][$i];
$sales->user_id = Auth::user()->id;
$sales->save();
$p = new Product;
$p->where("id", "=", $request["product_id"][$i])->decrement("stock", $request["qty"][$i]);
$product = Product::where("id", "=", $request["product_id"][$i])->first();
$data[$i]["sales"] = $sales;
$data[$i]["product"] = $product;
}

Session::flash("success", "Sale is successfully");
return redirect("/invoice")->with("data", $data);
}

次に、新しいルートを作成します-

Route::get("/invoice", function(IlluminateHttpRequest $request){
$data = [];
if ($request->session()->has("data")) {
$data = $request->session()->get("data");
}

return view("admin.invoice.index")->with("data", $data);
});

回答№2の場合は1

@ Sohel0415 私のセールスコントローラーはこんな感じです。

public function index()
{
$sales = Sale::orderBy("id", "DESC")->get();
return view("admin.sales.index", compact("sales"));
}


public function create()
{

$products = Product::pluck("name", "id", "qty")->toArray();
return view("admin.sales.create", compact("products"));
}

public function store(Request $request)
{

$data = array();
for ($i=0; $i < count($request["product_id"]); ++$i)
{
$sales= new Sale;
$sales->product_id = $request["product_id"][$i];
$sales->qty= $request["qty"][$i];
$sales->user_id = Auth::user()->id;
$sales->save();
$product = new Product;
$product->where("id", "=", $request["product_id"][$i])->decrement("stock", $request["qty"][$i]);
$data[]["sales"] = $sales;
$data[]["product"] = $product;

}
Session::flash("success", "Sale is successfully");
return view("admin.invoice.index")->with("data", $data);

}

admin.invoice.index

@extends("layouts.master")
@section("content")
@foreach($data as $d)
{{$d["sales"]}}
{{$d["product"]}}
@endforeach
@endsection

My web.php or routes:

Route::resource("categories", "CategoriesController");
Route::resource("products", "ProductsController");
Route::resource("sales", "SalesController");