Laravel where 已将其他参数传递给函数
以下显然会导致未定义的变量。
public function show($locale, $slug)
{
$article = Article::whereHas('translations', function ($query) {
$query->where('locale', 'en')
->where('slug', $slug);
})->first();
return $article;
}
尝试为函数提供$slug变量:
public function show($locale, $slug)
{
$article = Article::whereHas('translations', function ($query, $slug) {
$query->where('locale', 'en')
->where('slug', $slug);
})->first();
return $article;
}
结果
Missing argument 2 for App\Http\Controllers\ArticlesController::App\Http\Controllers\{closure}()
你怎么能让功能访问$slug?现在这可能很简单,但我找不到我需要搜索的内容。