srbac

以前自己安装过一次srbac,遇到很多问题,虽然都解决了,可是一时偷懒,没做记录。
再次安装时,还是遇到了点麻烦,所以这一还是记下来,以备不时之需。

 

首先,下载srbac_1.3beta.zip文件和对应的blog-srbac_1.2_r228.zip
问什么要下载第二个文件,后面就知道了。
  1. 按照手册进行配置:
  • 解压缩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,

      折腾半天,还是参照了blog里的例子才发现的。

 

  1.  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';
      }

 

 再次刷新安装页面,一切OK,点安装,顺利完成。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值