Estoy tratando de pasar dos parámetros a una función en whereHas con Laravel porque, de lo contrario, no podrá usar $businessid pero arroja un error, ¿alguien puede ayudarme?
Error:
FatalThrowableError en HomeController.php línea 16: Error de tipo: Muy pocos argumentos para funcionar App\Http\Controllers\Business\User\HomeController::App\Http\Controllers\Business\User{cierre}(), 1 pasado en C:\ web\vendor\laravel\framework\src\Illuminate\Database\Eloquent\Builder.php en la línea 938 y exactamente 2 esperados
Código:
<?php namespace App\Http\Controllers\Business\User; use App\User; use App\Http\Controllers\Controller; use Illuminate\Http\Request; use Auth; use App\Database\Frontend\Roleplay\Business\Businesses; use App\Database\Frontend\User\Player; class HomeController extends Controller { public function getView(Request $request, $businessid) { $workerCount = Player::whereHas("roleplay", function($q2, $businessid) { $q2->where('business_id', $businessid); })->count(); $workersWorkingCount = Player::where('currently_working', '1')->whereHas("roleplay", function($q2, $businessid) { $q2->where('business_id', $businessid); })->count(); $workersOnlineCount = Player::where('online', '1')->whereHas("roleplay", function($q2, $businessid) { $q2->where('business_id', $businessid); })->count(); $workersOfflineCount = Player::where('online', '0')->whereHas("roleplay", function($q2, $businessid) { $q2->where('business_id', $businessid); })->count(); return view('business.home', compact( 'workerCount', 'workersWorkingCount', 'workersOnlineCount', 'workersOfflineCount')); } }Así es como puede pasar variable (s) a la función.
$workerCount = Player::whereHas("roleplay", function($q2) use ($businessid) { $q2->where('business_id', $businessid); })->count();