【发布时间】:2019-05-18 12:17:57
【问题描述】:
我想创建一个自定义中间件来检查我的用户是否被允许进入教室。教室相关的路由应该受到 ClassRoom 中间件的保护,在重定向到控制器之前检查用户权限。
这是教室路线组:
Route::group(['prefix' => 'classroom/{classroom_id}', 'namespace' => 'Classroom', 'as' => 'classroom.'], function(){
Route::resource('dashboard', 'DashboardController')->only(['index', 'create', 'store']);
});
这是检查权限的代码:
$classroom = ClassRoom::findOrFail($classroom_id);
$ok = false;
foreach ($classroom->users as $classroom_user) {
if ($classroom_user->id == user()->id) {
$ok = true;
}
}
if (!$ok) {
return redirect()->route('user.classrooms.index');
}
【问题讨论】: