《Web 开发实战进阶》一书中 7.3 管理后台-初始化 中 @can ('manage_contents') 怎么来的?

导航入口
为了方便快速进入后台,我们新增『管理后台』导航入口,注意需要判断权限:
resources/views/layouts/_header.blade.php

<ul class="dropdown-menu" role="menu">

                            @can('manage_contents')
                                <li>
                                    <a href="{{ url(config('administrator.uri')) }}">
                                        <span class="glyphicon glyphicon-dashboard" aria-hidden="true"></span>
                                        管理后台
                                    </a>
                                </li>
                            @endcan

                            <li>
                                <a href="{{ route('users.show', Auth::id()) }}">
                                    <span class="glyphicon glyphicon-user" aria-hidden="true"></span>
                                    个人中心
                                </a>
                            </li>

如题

我不太懂为什么可以写`@can('manage_contents')`,没有哪个policy中有这个方法吧。
《L03 构架 API 服务器》
你将学到如 RESTFul 设计风格、PostMan 的使用、OAuth 流程,JWT 概念及使用 和 API 开发相关的进阶知识。
《L02 从零构建论坛系统》
以构建论坛项目 LaraBBS 为线索,展开对 Laravel 框架的全面学习。应用程序架构思路贴近 Laravel 框架的设计哲学。
KayuHo
最佳答案

在使用权限扩展包 laravel-permission 时新增了 manage_contents 权限,该权限包支持 blade 语法这么使用检查权限,可以查看一下文档的描述

laravel-permission 地址

6年前 评论
讨论数量: 6

重新阅读下 7.1. 多角色用户权限

在该章节中,我们安装了Laravel-permission扩展包

并且在迁移文件中创建了权限Permission::create(['name' => 'manage_contents']);

manage_contents该权限写入到了数据库中,它不是方法!

亲,明白了吗?

6年前 评论
KayuHo

在使用权限扩展包 laravel-permission 时新增了 manage_contents 权限,该权限包支持 blade 语法这么使用检查权限,可以查看一下文档的描述

laravel-permission 地址

6年前 评论

@Joy_he
Administrator 配置信息

.
.
.
'roles' => [
            'title'      => '用户角色',

            // 指定数据的类型为关联模型
            'type'       => 'relationship',

            // 关联模型的字段,用来做关联显示
            'name_field' => 'name',
        ],

请问这个'name_field' => 'name' ,是因为在角色表里面有name这个字段 所以才知道跟角色关联?

6年前 评论

file 该权限包的Provider中注册了这个权限 所有can中参数都会传入验证的

5年前 评论

讨论应以学习和精进为目的。请勿发布不友善或者负能量的内容,与人为善,比聪明更重要!