Я использую Laravel и sentinel для разработки системы разрешений, однако она была разработана таким образом, чтобы пользователь мог выбирать и отменять выбор разрешений для роли из формы флажка. Я уже кодировал часть, где они могут назначать разрешения, однако мне нужно, чтобы уже отмеченные флажки были отмечены, когда пользователь запрашивает страницу. Как вы рекомендуете подходить к этому? Я использую промежуточное ПО
<?php
namespace App\Http\Middleware;
use Closure;
use Cartalyst\Sentinel\Laravel\Facades\Sentinel;
class PermissionsMiddleware
{
/**
* Handle an incoming request.
*
* @param \Illuminate\Http\Request $request
* @param \Closure $next
* @return mixed
*/
public function handle($request, Closure $next)
{
$user = Sentinel::findById(1);
$permisos = array(array_keys($user['permissions']))
return $next($request);
}
}
Однако я не знаю, как передать данные из промежуточного программного обеспечения в представление.
Я не думаю, что для этой цели рекомендуется использовать промежуточное программное обеспечение, но если вы все еще хотите сделать это таким образом, вы можете попробовать использовать:
View::share ( 'permisos', $permisos );
Чтобы поделиться переменной permisos с представлением, которое идет после промежуточного программного обеспечения.
Итак, ваш код будет выглядеть так:
<?php
namespace App\Http\Middleware;
use Closure;
use Cartalyst\Sentinel\Laravel\Facades\Sentinel;
class PermissionsMiddleware
{
/**
* Handle an incoming request.
*
* @param \Illuminate\Http\Request $request
* @param \Closure $next
* @return mixed
*/
public function handle($request, Closure $next)
{
$user = Sentinel::findById(1);
$permisos = array(array_keys($user['permissions']))
View::share ( 'permisos', $permisos );
return $next($request);
}
}
Других решений пока нет …