Ya muestro datos de la base de datos en una tabla. Luego hizo una condición si el stock del producto = 0, luego muestre algo de html 'agotado' y, de lo contrario, muestre la cantidad del producto. Ahora quiero buscar por opción En stock y sin stock. Cuando haga clic en En stock, quiero ver todos los productos en stock en la tabla y usar la misma función en Agotado.
aquí está mi controlador
función pública all_products(Solicitud $solicitud) {
// $categories = Category::all(); $col_name = null; $query = null; $seller_id = null; $sort_search = null; $products = Product::orderBy('created_at', 'desc')->where('auction_product',0); if ($request->has('user_id') && $request->user_id != null) { $products = $products->where('user_id', $request->user_id); $seller_id = $request->user_id; } if ($request->search != null){ $searchString = $request->search; $products = $products ->where('name', 'like', '%'.$request->search.'%') ->orWhere('barcode', 'like', '%'.$request->search.'%') ->orWhereHas('stocks', function ($query) use ($searchString) { $query->where('sku', 'like', $searchString.'%'); }); $sort_search = $request->search; } if ($request->type != null){ $var = explode(",", $request->type); $col_name = $var[0]; $query = $var[1]; $products = $products->orderBy($col_name, $query); $sort_type = $request->type; } $products = $products->paginate(50); $type = 'All'; return view('backend.product.products.index', compact('products','type', 'col_name', 'query', 'seller_id', 'sort_search')); }y aquí está mi hoja de página
<div class="col-md-2 ml-auto"> <select class="form-control form-control-sm aiz-selectpicker mb-2 mb-md-0" name="type" id="type" onchange="sort_products()"> <option value="">{{ translate('Sort By') }}</option> <option value="num_of_sale,desc"@isset($col_name , $query) @if($col_name == 'num_of_sale' && $query == 'desc') selected @endif @endisset>{{translate('In Stock')}}</option> <option value="status,asc"@isset($col_name , $query) @if($col_name == 'status' && $query == 'asc') selected @endif @endisset>{{translate('Out Of Stock')}}</option> </select> </div>