我正在使用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);
}
}但是,我不知道如何将数据从中间件传递到视图。
发布于 2016-11-02 05:04:10
我不建议将中间件用于此目的,但如果您仍然想这样做,您可以尝试使用:
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);
}
}https://stackoverflow.com/questions/40366277
复制相似问题