YII管理後臺許可權分配關於整理舊程式碼
YII自帶的RBAC許可權角色分配就可以解決,,,其實就是控制路由來控制訪問許可權
但是在網站初期人員少的情況我們一般不用限制許可權,,等到專案做大了,,再分配許可權的時候發現有些選單是通過路由介面下的狀態區分的,,這就給許可權分配造成了困擾,我的解決辦法是做最小的改動,即通過狀態來定向不同的路由達到控制許可權的目的:
舉個例子:
舊程式碼:(多個型別的內容通過一個路由訪問,不能精確控制許可權)
class TestlistController extends BaseBackController
{
/**
* 首頁入口
* @return string
*/
public function actionIndex()
{
$login_id = Yii::$app->user->identity->id;
$type = intval($_GET['type']);
$data = $_GET;
if(!$type){ //全部
//處理業務邏輯
}elseif($type == 1){ //關閉列表
//處理業務邏輯
}elseif($type == 2){ //今日列表
//處理業務邏輯
}
return return $this->render('index');
}
}
修改後新程式碼:(修改後不同型別資料走不同的路由方便細化許可權)
class TestlistController extends BaseBackController
{
/**
* 首頁入口
* @return string
*/
public function actionIndex()
{
$login_id = Yii::$app->user->identity->id;
$type = intval($_GET['type']);
$data = $_GET; //##修改後根據不同type走不同的路由,就可以控制許可權了
if(!$type){ //全部
return $this->redirect(array('testlist/index-all', 'data' => $data));
}elseif($type == 1){ //關閉列表
return $this->redirect(array('testlist/index-close', 'type'=>$type, 'data' => $data));
}elseif($type == 2){ //今日列表
return $this->redirect(array('testlist/index-cur', 'type' => $type, 'data' => $data));
}
}
/**
* 列表
* @param $data
* @return string
*/
public function testlist($data){
$showarr = [];
$type = intval($data['type']);
if(!$type){ //全部
//處理業務邏輯
}elseif($type == 1){ //關閉列表
//處理業務邏輯
}elseif($type == 2){ //今日列表
//處理業務邏輯
}
return $this->render('index');
}
/**
* 全部列表
*/
public function actionIndexAll(){
return self::testlist($_GET['data']);
}
/**
* 今日列表
* @return string
*/
public function actionIndexCur(){
return self::testlist($_GET['data']);
}
/**
* 關閉的列表
* @return mixed
*/
public function actionIndexClose(){
return self::testlist($_GET['data']);
}
}
相關文章
- 關於mysql許可權管理MySql
- 關於公司程式碼許可權的問題
- odoo 許可權分配Odoo
- 【Git】程式碼許可權&分支管理Git
- Vue2.0 + ElementUI 手寫許可權管理系統後臺模板(二)——許可權管理VueUI
- 關於許可權管理設計文章整理,希望對大家有所幫助
- springboot 許可權管理 後臺框架原始碼 java 專案 shiro FHAddminSpring Boot框架原始碼Java
- Any-基於Laravel5.4新的許可權管理後臺骨架Laravel
- 可以成功重置帝國CMS 的後臺密碼,重新獲得後臺管理許可權密碼
- 關於動態許可權
- springboot mybatis 後臺框架平臺 整合程式碼生成器 shiro 許可權Spring BootMyBatis框架
- thinkphp 5.0.10開發auth後臺許可權管理系統PHP
- Bauth許可權系統,基於ThinkPHP5開發 - 一個優秀的整合許可權管理的通用後臺PHP
- Catchadmin 基於 Tp6 的 前後端分離後臺管理許可權系統後端
- 企業微信的業務管理許可權如何分配
- 基於 Laravel5.5 和 layui 包含基礎 RBAC 許可權的管理後臺LaravelUI
- 前端學習(2596):後臺系統的許可權控制和管理--重新整理頁面消失前端
- vue後臺管理系統許可權控制思考與實踐Vue
- vue後臺管理系統學習(6)--路由和許可權Vue路由
- ThinkPHP開發線上視訊網站原始碼,後臺完整許可權管理PHP網站原始碼
- 基於RBAC實現許可權管理
- postgresql關於許可權的總結SQL
- activiti 工作流 springboot 後臺框架平臺 整合程式碼生成器 shiro 許可權Spring Boot框架
- Odoo許可權管理Odoo
- 特殊許可權管理
- sql許可權管理SQL
- 許可權管理策略
- MySQL許可權管理MySql
- 4、許可權管理
- RBAC許可權管理
- PostgreSQL:許可權管理SQL
- 一對一直播系統原始碼,後臺管理系統許可權控制方案原始碼
- django開發之許可權管理(一)——許可權管理詳解(許可權管理原理以及方案)、不使用許可權框架的原始授權方式詳解Django框架
- shiro教程(1):基於url許可權管理
- 基於RBAC的許可權管理系統
- THinkPHP3.2.3版本開發,網貸門戶+後臺完整功能,許可權分配PHP
- win10管理員許可權怎麼取消_win10如何關掉管理員許可權Win10
- 1.5. 關於資料庫管理員的安全和許可權資料庫
- LR.Net低程式碼開發平臺 快速設計許可權管理模組