我的http://localhost:8888/VGL/public/category/18?sty=3
当dd($request->sty);
等于3时
但是我将$request->sty
放在whereHas
中是
未定义变量:请求
public function show(Request $request, $id)
{
$products = Product::with('features')
->whereHas('features', function ($q) {
return $q->where('id', $request->sty);
})
->where('category_id',17)
->get();
}
答案 0 :(得分:6)
尝试一下
如果要在where closure
内使用任何变量,则必须在use($variable)
内传递该变量
public function show(Request $request, $id)
{
$products = Product::with('features')
->whereHas('features', function ($q) use($request) {
return $q->where('id', $request->sty);
})
->where('category_id',17)
->get();
}