Yii框架中安装srbac扩展方法
- 按照手册进行配置:
- 解压缩srbac_1.3beta.zip文件,将解压后的文件复制到你的application/protected/modules目录下,注意是modules,而不是我们经常把扩展放到的那个extension目录。
- 配置你的application的config目录下的main.php文件。在import节添加配置,如:
'import'=>array(
'application.modules.srbac.controllers.SBaseController',);
- 在modules节添加配置,如:
'srbac' => array(
'userclass'=>'User', //可选,默认是 User
'userid'=>'id', //可选,默认是 userid
'username'=>'username', //可选,默认是 username
'debug'=>true, //可选,默认是 false
'pageSize'=>10, //可选,默认是 15
'superUser' =>'Authority', //可选,默认是 Authorizer
'css'=>'srbac.css', //可选,默认是 srbac.css
'layout'=>'application.views.layouts.main', //可选,默认是
// application.views.layouts.main, 必须是一个存在的路径别名
'notAuthorizedView'=>
'srbac.views.authitem.unauthorized', // 可选,默认是unauthorized.php
//srbac.views.authitem.unauthorized, 必须是一个存在的路径别名
'alwaysAllowed'=>array(//可选,默认是 gui
'SiteLogin','SiteLogout','SiteIndex','SiteAdmin',
'SiteError', 'SiteContact'),
'userActions'=>array(//可选,默认是空数组
'Show','View','List'),
'listBoxNumberOfLines' => 15, //可选,默认是10
'imagesPath' => 'srbac.images', //可选,默认是 srbac.images
'imagesPack'=>'noia', //可选,默认是 noia
'iconText'=>true, //可选,默认是 false
'header'=>'srbac.views.authitem.header', //可选,默认是
// srbac.views.authitem.header, 必须是一个存在的路径别名
'footer'=>'srbac.views.authitem.footer', //可选,默认是
// srbac.views.authitem.footer, 必须是一个存在的路径别名
'showHeader'=>true, //可选,默认是false
'showFooter'=>true, //可选,默认是false
'alwaysAllowedPath'=>'srbac.components', //可选,默认是 srbac.components
// 必须是一个存在的路径别名
),
- 然后修改components里的authManager配置:
'authManager'=>array(
// 'class'=>'CDbAuthManager',// Manager 的类型
'class'=>'srbac.components.SDbAuthManager',
'connectionID'=>'db',//使用的数据库组
'itemTable'=>'tbl_items',// 授权项目表 (默认:authitem)
'assignmentTable'=>'tbl_assignments',// 授权分配表 (默认:authassignment)
'itemChildTable'=>'tbl_itemchildren',// 授权子项目表 (默认:authitemchild)
),
注意这里,'class'=>'srbac.components.SDbAuthManager', 手册上写的是modules.srbac.components.SDbAuthManager,
- OK,到这里,配置的工作就算完成了,然后在浏览器中运行application/index.php?r=srbac
这时会跳转到安装页面,奇怪,为什么会提示找不到User.php呢?这时候前面下载的第二个文件就有用了,还是解压缩,然后再protected/models目录中找到User.php这个文件,拷贝到你的application对应的目录中。然后刷新安装页面,又提示找不到{[User]}这个表,没完了啊,继续在blog的这个例子里,protected/db目录中,打开schema.mysql.sql,里面有tbl_user表的sql,摘出来,在mysql里执行下,然后修改User.php的tableName方法为:public function tableName(){return 'tbl_user';}
Yii框架中安装srbac扩展方法的更多相关文章
- Yii框架中使用SRBAC作为权限管理模块时遇到的问题
Yii框架中使用SRBAC作为权限管理模块时遇到的问题 看到Yii中提供RBAC的插件,SRBAC,就想用用. 结果按照手册上的安装办法,整来整去,安装完了,可就是进不了权限管理界面. 最后想到, ...
- Yii 框架中安装 memcache 及配置和测试
安装php_memcache.dll扩展 1.首先将php_memcache.dll文件放入E:\server\php\ext目录下 (php_memcache.dll下载地址:http://wind ...
- YII框架中的srbac权限管理模块的安全与使用(版本是1.1.20)
0x01 前言 srbac的原理: YII框架的srbac模块是一个专门管理权限的一个模块,那它是怎么管理权限的呢.我们知道YII框架的网页显示是由控制器实现的,控制器继承父类CController和 ...
- Yii框架中使用mongodb扩展
前提条件:安装了mongodb数据库 安装了mongo的php驱动 下载Yii的mongo扩展:这是YiiMongoDbSuite的1.3.6版本支持PHP Mongo驱动的版本为1.0.5及以下 下 ...
- 使用Yii框架中遇到的三个问题
以下由我们在信易网络公司开发项目的时候终结出的一些经验 使用Yii框架中遇到的三个问题 1.main.php文件中欲引入全局变量的问题 还原一下此问题:在Yii框架中,main.php一般会作为整个应 ...
- 浅析Thinkphp框架中运用phprpc扩展模式
浅析Thinkphp框架中应用phprpc扩展模式 这次的项目舍弃了原来使用Axis2做web服务端的 方案,改用phprpc实现,其一是服务端的thinkphp已集成有该模式接口,其二是phprpc ...
- Yii框架中集成phprpc、hprose
在项目开发的过程中有时候会涉及到对外提供接口供第三方程序调用或者是不同程序间需要相互通信,那么最通用的做法是用传统的SOAP方式来实现,用XML的文档格式来作为传输载体.但是这种方式不灵活,支持的数据 ...
- yii框架中关于控制器中filter过滤器和外部action的使用
在yii框架中,控制器的过滤器分为执行前和执行后,这里举例是在执行控制器前的过滤. 需要在components/文件夹下定义公共的TestAction.php文件,并且实现run()方法.这个acti ...
- YII框架中可以使用foreach遍历对象以及可以使用数组形式直接访问对象的原因
YII框架中可以使用foreach遍历对象以及可以使用数组形式直接访问对象的原因在YII框架的使用过程中,我们可以使用foreach直接遍历findAll等方法返回的对象的属性为什么呢?其实这与CMo ...
随机推荐
- 基础训练 Sine之舞
Sine之舞 #include<iostream> #include<vector> #include<string.h> using namespace std; ...
- Httpclient 和 HtmlUnit 对比
unit相比于client更接近浏览器,模拟浏览器访问状态,两者都是将网页封装成了一个对象,不同是,client能更好地操作网页元素. but 官方unit已经很老了,08年的,已经不更新了.
- ubuntu系统下如何禁用笔记本触摸板
命令行方式,得每次用终端输入命令行设置,不方便. sudo rmmod psmouse # 用来禁用触摸板 sudo modprobe psmouse # 用来启用触摸板 想 ...
- vue 使用Echarts 环形图 自定义legend formatter 富文本标签
main.js 引入echarts // 引入echarts import Echarts from 'echarts' Vue.prototype.$echarts = Echarts < ...
- java面试题之什么是ThreadLocal?底层如何实现的?
ThreadLocal是一个解决线程并发问题的一个类,用于创建线程的本地变量,我们知道一个对象的所有线程会共享它的全局变量,所以这些变量不是线程安全的,我们可以使用同步技术.但是当我们不想使用同步的时 ...
- IBM内存三技术:Chipkill、MPX、MM
转自:解析IBM内存三技术:Chipkill.MPX.MM 内存作为服务器中的又一个重要的组成部分,对于企业的应用起着十分重要的作用.如今,企业用户对于服务器的要求逐渐提升,使得在提高内存密度.增大内 ...
- spring 如何动态加载properties文件的内容
1. 在xml中配置你的properties路径: <bean id="messageSource" class="org.springframework.cont ...
- 程序自动分析(codevs 4600)
题目描述 Description 在实现程序自动分析的过程中,常常需要判定一些约束条件是否能被同时满足. 考虑一个约束满足问题的简化版本:假设x1,x2,x3,…代表程序中出现的变量,给定n个形如xi ...
- HDU 4803 Poor Warehouse Keeper (贪心+避开精度)
555555,能避开精度还是避开精度吧,,,,我们是弱菜.. Poor Warehouse Keeper Time Limit: 2000/1000 MS (Java/Others) Memor ...
- R语言入门--画图(一)--需要注意的地方
一.注意‘\t’是‘\t’ 不是‘/t’ 写'/t'就错了 就不是换行符了 二.程序报错先检查有没有这个包