使用laravel根據(jù)用戶(hù)類(lèi)型來(lái)顯示或隱藏字段
在api開(kāi)發(fā)中,有時(shí)候需要對(duì)自己以外的其他普通用戶(hù)隱藏字段,比如隱藏手機(jī)號(hào)。而對(duì)于admin用戶(hù),則又不需要隱藏手機(jī)號(hào)。
所以,需要設(shè)計(jì)一種能夠簡(jiǎn)單的根據(jù)不同用戶(hù)來(lái)顯示或隱藏字段的方式。
方法基于laravel實(shí)現(xiàn)
use Illuminate\Database\Eloquent\Model; class User extends Model { /** * 重寫(xiě)toArray方法 */ public function toArray(){ //獲取api用戶(hù) $me=app(Request::class)->user("api"); if ($me!=null) { if ($me instanceof AdminUser) { //如果是admin用戶(hù) //TODO:使用admin用戶(hù)的顯示規(guī)則 }else if($me instanceof User){ if ($me->id==$this->id) { //如果是自己 //TODO:使用面向自己的顯示規(guī)則 }else{ //如果是其他普通用戶(hù) //TODO:使用面向其他普通用戶(hù)的顯示規(guī)則 } } } return parent::toArray(); } }
這樣實(shí)現(xiàn)后,就不需要針對(duì)每一個(gè)api去修改規(guī)則了
以上這篇使用laravel根據(jù)用戶(hù)類(lèi)型來(lái)顯示或隱藏字段就是小編分享給大家的全部?jī)?nèi)容了,希望能給大家一個(gè)參考,也希望大家多多支持腳本之家。
相關(guān)文章
Yii查詢(xún)生成器(Query Builder)用法實(shí)例教程
這篇文章主要介紹了Yii查詢(xún)生成器(Query Builder)用法,包括了各種常見(jiàn)的查詢(xún)操作,需要的朋友可以參考下2014-09-09php微信公眾平臺(tái)開(kāi)發(fā)(一) 配置接口
這篇文章主要為大家詳細(xì)介紹了php微信公眾平臺(tái)開(kāi)發(fā)第一篇,微信公眾號(hào)配置接口,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2016-12-12Laravel框架實(shí)現(xiàn)定時(shí)Task Scheduling例子
今天小編就為大家分享一篇Laravel框架實(shí)現(xiàn)定時(shí)Task Scheduling例子,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看吧2019-10-10php使用mb_check_encoding檢查字符串在指定的編碼里是否有效
本文說(shuō)的是PHP使用mb_check_encoding檢查字符串在指定的編碼里是否有效的實(shí)例2013-11-11PHP使用PHPMailer發(fā)送郵件的簡(jiǎn)單使用方法
本文是PHP使用PHPMailer發(fā)送郵件的簡(jiǎn)單使用方法,提供自己寫(xiě)的代碼2013-11-11php中使用$_REQUEST需要注意的一個(gè)問(wèn)題
本篇文章介紹了,php中使用$_REQUEST需要注意的一個(gè)問(wèn)題,需要的朋友參考下2013-05-05PHP網(wǎng)頁(yè)游戲?qū)W習(xí)之Xnova(ogame)源碼解讀(三)
這篇文章主要介紹了PHP網(wǎng)頁(yè)游戲Xnova(ogame)源碼解讀的用戶(hù)注冊(cè)頁(yè)面,需要的朋友可以參考下2014-06-06PHP實(shí)現(xiàn)今天是星期幾的幾種寫(xiě)法
今天是星期幾的寫(xiě)法有很多,本文整理了常用的三種,感興趣的朋友可以了解下2013-09-09