When I tried to get value from middleware to construct of controller it is getting Null
My Controller Code
$this->middleware(function ($request, $next) {
$moduleCode = "property_module";
$middleware = app()->make(PermissionAndRoleCheck::class, ['moduleCode' => $moduleCode]);
$this->userModulePermissions = $request->attributes->get('userModulePermissions');
dd($this->userModulePermissions);
return $next($request);
});
My Middleware
public function handle(Request $request, Closure $next)
{
$moduleCode = "property_module";
$role = Auth::user()->user_type;
$propertyModuleId ="6ca38e62-6c50-438d-bdcd-0db8f563ac4c";
$roleId = "b9e57901-8077-4962-aad9-3329d8e02323";
$module = Module::where('module_code', $moduleCode)->first();
$userModulePermissions = Permission::where('role_id', $roleId)
->where('module_id', $propertyModuleId)
->first();
if (!$userModulePermissions) {
return response()->json(['message' => 'No Data here.'], 403);
}
app()->instance('userModulePermissions', $userModulePermissions);
return $next($request);
}
When I directly put query in controller I am getting values
id | role_id | module_id | permissions |
---|---|---|---|
40469677-0331-4717-814b-7102f4b37d35 | beb60b0e-bed4-4a77-9901-47113bbcba67 | 6ca38e62-6c50-438d-bdcd-0db8f563ac4c | add,edit,view |
When Write query in controller I am getting results, When I tried the same in Middleware not getting values