第二天ci项目规划 前后台分离

第二天ci项目规划 前后台分离

1/31/2016 2:40:26 PM

前后台

  1. 表面上看前后台不同网站 但是数据是他们之间的联系要完成结构完整项目 设计好前后台 基于mvc框架 前后台那些地方不同 model公用 包括一些其他类和辅助函数可以公用
  2. 默认一个application 对应一个应用,如果需要前后台两个应用
    1. 比较简单方法 复制一份 application 更改名称 admin 同时编写admin.php作为入口文件 优点 简单 缺点 重复代码太多 类似创建两个应用
    2. ci框架控制器支持子文件夹application/controller/admin直接访问 localhost/citest/index.php/admin/hello/视图也支持子文件夹视图$this->load->view("admin/hello.html",$data) 这个类似tp
    3. 通常项目需求 ,前台网站支持换肤功能 前台视图单独拿出来处理
      1. 实现这一点 需要对核心库进行拓展或者替换核心类文件或者自己编写类文件
      2. 拓展核心类 拓展类必须由母类拓展而来 新拓展的类所在文件必须以MY_为前缀 文件放在 application/core下
      3. 步骤
        1. 网站根文件夹 下创建themes和 themes/default
        2. 定义一个常量 config/constants.php中define('THEMES_DIR',FCPATH.'themes/');
        3. 视图的加载 loader.php $this->ci_view_path = array(APPPATH.'views/' => TRUE);
          class MY_Loader extends CI_Loader { protected $_theme = 'default/'; public function switch_themes_on() { $this->ci_view_paths = array(THEMES_DIR.$this->_theme => TRUE); } public function switch_theme_off(){} }
      4. 哪里调用这两个方法 application/core/MY_Controller.php

         //定义前台总控制器
             class Home_Controller extends CI_Controller {
             public function __construct(){
             parent::__construct();
             $this->load->switch_theme_on();
             //开启皮肤功能
                 }
        
             }   
         //后台控制器
         class Admin_Controller extends CI_Controller {
         public function __construct(){
         parent::__construct();
         $this->load->switch_theme_off();
         //关闭皮肤功能
             }
         }   
      5. 控制器通过子文件夹分离 前台放到controller根目录下 后台放到admin中 视图文件则分离 前台放到 网站根目录下 themes 且还支持子文件夹 后台使用默认view文件夹

转载于:https://www.cnblogs.com/charle94/p/5173987.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值