本文整理汇总了PHP中app\Product::whereHas方法的典型用法代码示例。如果您正苦于以下问题:PHP Product::whereHas方法的具体用法?PHP Product::whereHas怎么用?PHP Product::whereHas使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类app\Product
的用法示例。
在下文中一共展示了Product::whereHas方法的3个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的PHP代码示例。
示例1: index
/**
* Display a listing of the resource.
*
* @return \Illuminate\Http\Response
*/
public function index(\App\Product $productModel, \App\Category $categoryModel)
{
$category_id = request('cat');
$categories = $categoryModel->all()->lists('title', 'id');
if ($category_id) {
$categoryModel->findOrFail($category_id);
$products = $productModel->whereHas('categories', function ($query) use($category_id) {
$query->where('category_id', $category_id);
})->get()->toArray();
} else {
$products = $productModel->all()->toArray();
}
return view('product.index', compact('products', 'categories', 'category_id'));
}
示例2: index
public function index(Request $request)
{
if ($request->has('filter')) {
$filter = $request->input('filter');
$products = Product::whereHas('categories', function ($q) use($filter) {
$q->whereIn('categories.id', $filter);
})->simplePaginate(10);
} else {
$filter = "";
$products = Product::with('categories')->simplePaginate(10);
}
$categories = Category::withDepth()->get();
$categories = $categories->toTree();
return view('products.index', ['products' => $products, 'categories' => $categories, 'filter' => $filter]);
}
示例3: searchByColor
public static function searchByColor($id)
{
return Product::whereHas('colors', function ($query) use($id) {
$query->where('id', $id);
})->get();
}