php - 向特定用户隐藏页面
问题描述
我最近收到了对某种类型的用户隐藏某个页面的请求。为此,我在“users”表中创建了一个名为“masters”VARCHAR,NULL 的结构。我想在我希望他看到页面的用户中输入“1”,对于那些看不到页面的用户输入“0”。最好的建议是什么?
<li>
<a href="masters">
<i class="now-ui-icons users_single-02"></i>
<p>Materials</p>
</a>
</li>
Route::get('/masters', function () {
return view('masters');
});
解决方案
您可以使用 Gates,在您的App\Providers\AuthServiceProvider
public function boot()
{
$this->registerPolicies();
Gate::define('masters', function ($user) {
return $user->masters == "1";
});
}
然后你的路线将是。这将隐藏整个页面。
Route::get('/masters', function () {
return view('masters');
})->middleware('can:masters');
如果你想隐藏页面的一部分
@can('masters')
<!-- The Current User Can see this part -->
@endcan
推荐阅读
- powershell - 使用 ComObject 登录后如何导航到链接?
- sql - 在 R 中使用 SQL 将查询字段转换为布尔值
- perl - 将变量传递给 Mojolicious 中的布局模板
- python - 寻找frozensets集的差异
- spring - Spring 调度程序任务 - Cron Job 没有按计划在 Spring Batch 中工作,它只是继续运行?
- laravel - 无法安装 Laravel nova 自定义字段的 npm 依赖项
- awk - Awk regex substring in column
- python - 如何使用 Python 获取 Excel 文件中形状的单元格坐标?
- google-api - 需要说明如何应用 Google Sheets API 限制
- charts - 自 1 天以来,Google 图表在 Load 上抛出错误