后端开发|php教程
php,laravel
后端开发-php教程
Laravel5.1 ACL教学
安卓源码大全,vscode导入数据库,Ubuntu退出磁盘,tomcat无法显示jpg,爬虫培训简介,php 是什么编码,温州seo推广公司哪家好,陪打游戏网站源码,图片app模板源码下载lzw
按照上面的教学,用户表使用默认的user表的话,一切都是很顺利的,可是我最终的目的是后台的admin表进行权限管理,于是把教学里的user都换成了admin,这时候出了问题,在blade中@can(edit-post)
和@can(delete-post)
全部没通过
微信oa 源码,如何改变vscode背景色,ubuntu can工具,tomcat+镜像制作,机器爬虫视频,golang和php,seo关键词排名技巧pdf,网站评论源码lzw
于是我换到了控制器
$admin = Auth::guard(admin)->user(); if($admin->can(edit-post)){ echo 1; }
通过,成功输出1,yeah!
换妆试衣源码,vscode怎么选中搜索,Ubuntu版360,tomcat开机启动端口,qpython爬虫,php多音字,营口seo推广前景,手机验证码网站源码,数据库电影网站模板下载地址lzw
于是我就想到了会不会是模版中的can
是取的user表?于是我又把auth.php
中的默认guard
改成admin
defaults => [ guard => admin, passwords => users, ],
成功!yeah!
好了,问题来了,我不改auth.php
中guard
的默认值,怎样可以在模版中让can
判断的是admin表的用户?
回复内容:
Laravel5.1 ACL教学
按照上面的教学,用户表使用默认的user表的话,一切都是很顺利的,可是我最终的目的是后台的admin表进行权限管理,于是把教学里的user都换成了admin,这时候出了问题,在blade中@can(edit-post)
和@can(delete-post)
全部没通过
于是我换到了控制器
$admin = Auth::guard(admin)->user(); if($admin->can(edit-post)){ echo 1; }
通过,成功输出1,yeah!
于是我就想到了会不会是模版中的can
是取的user表?于是我又把auth.php
中的默认guard
改成admin
defaults => [ guard => admin, passwords => users, ],
成功!yeah!
好了,问题来了,我不改auth.php
中guard
的默认值,怎样可以在模版中让can
判断的是admin表的用户?
看了下源码,似乎并不支持!!!
/*** Compile the can statements into valid PHP.** @param string $expression* @return string*/ protected function compileCan($expression) { return ""; }
/*** Determine if the given ability should be granted for the current user.** @param string $ability* @param array|mixed $arguments* @return bool*/ public function check($ability, $arguments = []) { try { $result = $this->raw($ability, $arguments); } catch (AuthorizationException $e) { return false; } return (bool) $result; }
模板里可以这样写,只不过很长,我把if里边的存到一个公用函数中了
@if(Gate::forUser(Auth::guard(admin)->user())->allows($priv))@endif