用户登录

在区块的配置界面,我们可以配置一下这个区块在哪里可以显示 .. 或者在什么页面上隐藏它 .. 使用代码我们也可以去设置区块的显示或者隐藏 ..

这里我们可以先打开核心里的 BlockBase 这个类去看一下 .. 在 core .. lib.. Drupal .. Core 这个目录的下面,找到 Block .. 打开它下面的 BlockBase.php .. 在这个文件里定义的类就是我们在自己的区块类里继承的那个类 ..

这里有一个 blockAccess 方法,它的作用就是判断区块是不是要显示 .. 默认它使用了 AccessResult 的 allowed 方法,意思就是允许显示区块 ..

这个 AccessResult 可以返回检查权限的结果 .. 我们可以去看一下它 .. 在这个类的上面可以看到这个 AccessResult 的位置 .. 在 core .. lib .. Drupal .. Core 的下面, 找到 Access .. 打开 AccessResult.php

这里有一些方法 .. neutral .. allowed .. forbidden .. 还有一些方法可以判断一些条件 .. 比如 allowedIf .. 也就是给这个方法的条件如果是返回真 .. 就允许 .. 下面还有一下 forbiddenIf .. 意思就是给它的条件返回真 .. 就去禁止 ..

我们也可以判断用户拥有的权限来决定允许或者禁止 .. 可以使用下面的 allowedIfHasPermission .. 还有一个 allowedIfHasPermissions .. 区别就是,下面的方法可以判断用户拥有的多个权限 ..

权限《 Drupal 8 开发:区块 》

统计

14696
分钟
0
你学会了
0%
完成

社会化网络

关于

微信订阅号

扫描微信二维码关注宁皓网,每天进步一点