TP框架 代码复用问题

浏览:816 发布日期:2017/05/29 分类:求助交流 关键字: 设计模式 代码复用
在用tp3.3做项目开发时,很多时候增删改查代码基本一致,尤其是控制器部分.但是每个控制器中都相同的代码都需要重复写一遍.学习过设计模式,这种情况用怎样的模式可以减少代码的重复量.最好用设计模式

举个例子,做rbac系统:

这个是我的管理员控制器增删改查的基本代码,除了构造函数创建的模型类不同,基本增删改查结构都差不多,怎么样能减少重复代码了.希望高手能指点一下,谢谢protected $_model;
    public function __construct(){
        parent::__construct();
        $this->_model=new MannagerModel();
    }

    /**
     * 管理员添加
     */
    public function addC(){
        if(IS_POST){
            $data=I('post.');
            $res=$this->_model->Store($data);
            $this->redirectUrl($res,'listC');
            }
            $this->display();
    }
    /**
     * 管理员列表显示
     * @return [type] [description]
     */
    public function listC(){
        $data=$this->_model->lists();
        $this->assign('lists',$data);
        $this->display();
    }

    /**
     * 管理员删除
     * @return [type] [description]
     */
    public function delC(){
        $id=intval(I('get.id'));
        $res=$this->_model->del($id);
        //跳转判断函数
        $this->redirectUrl($res);
    }
    /**
     * 管理员更新
     * @return [type] [description]
     */
    public function editC(){
        $id=intval(I('get.id'));
        //where的数组形式
        $where['id']=$id;
        // 显示旧数据
        $old=$this->_model->lists($where);
        $this->assign('old',$old);
        //存储新的数据
        if(IS_POST){
            $data=I('post.');
            $res=$this->_model->edit($id,$data);
            $this->redirectUrl($res,'listC');            
        }

        $this->display();
    }
最佳答案
评论( 相关
后面还有条评论,点击查看>>