用户
 找回密码
 入住 CI 中国社区
搜索
查看: 1577|回复: 4
收起左侧

[版本 3.x] 关于控制器继承问题

[复制链接]
发表于 2015-11-5 16:16:52 | 显示全部楼层 |阅读模式
在项目中,每个控制器继承一个公用控制器,比如后台的公共控制器Admin_Controller,在后台的每个应用都来继承Admin_Controller,但是同时要确保Admin_Controller 也是继承CI_Controller。

我的想法如下:在application/core中创建:
(application/config/config.php 文件并找到这一项config['subclass_prefix'] = 'Base_';)

class Base_Controller extends CI_Controller
{
  function  __construct()
  {
     parent::__construct();
  }
}



class Admin_Controller extends Base_Controller
{
  function  __construct()
  {
     parent::__construct();
  }
}


这样只有继承 Base_Controller 可以使用, 继承 Admin_Controller 不能使用,请大侠们指点。
 楼主| 发表于 2015-11-6 10:46:12 | 显示全部楼层
没人知道这个怎么整么 ?
发表于 2015-11-7 21:10:48 | 显示全部楼层
我没有改那个默认前缀,用的是 MY_ 是没问题的,不过这两个类是要写在同一个文件的,不知道你是不是这个原因才不能使用
 楼主| 发表于 2015-11-9 17:15:16 | 显示全部楼层
Michael锐生 发表于 2015-11-7 21:10
我没有改那个默认前缀,用的是 MY_ 是没问题的,不过这两个类是要写在同一个文件的,不知道你是不是这个原 ...

俺试下。
 楼主| 发表于 2015-11-9 18:00:55 | 显示全部楼层

俺你这种写法可以,但是不是很好调用。
project
    -- admin
          -- controller
          -- core
          .........
    -- api
          -- controller
          -- core
          .........
    system
    ........

怎样架构这个呢?

本版积分规则