关于TP5.1模型和控制器的一些疑问

浏览:1565 发布日期:2019/02/01 分类:求助交流
大家好,我想了解下控制器和模型的一些标准写法或者大家习惯的写法。初学者求赐教。
看了一些系统的写法,我看到他们是这么来写控制器的。//添加
    public function add(){
        $this->assign('info',null);
        return view();
    }
    //保存添加
    public function addPost(){
        $m = new M();
        $result =  $m->addPost();
        if($result['error']){
            $this->error($result['msg']);
        }else{
            $this->success($result['msg'],'index');
        }
    }

    //修改
    public function edit(){
        $m = new M();
        $info = $m->edit();
        $this->assign('info', $info);
        return view('add');
    }

    //修改保存
    public function editPost(){
        $m = new M();
        $result =  $m->editPost();
        if($result['error']){
            $this->error($result['msg']);
        }else{
            $this->success($result['msg'],'index');
        }
    }

    //删除
    public function del(){
        $m = new M();
        return $m->del();
    }
模型中这么来写//添加保存
    public function addPost(){
        $data = Request::except('file');
        if(empty($data['name']) || empty($data['url'])){
            $result = ['error'=>1,'msg'=>'请填写网站名称和网站地址'];
            return $result;
        }
        $data['create_time'] = $data['update_time'] = time();
        $result = self::save($data);
        if($result){
            $result = ['error'=>0,'msg'=>'添加成功'];
            return $result;
        }else{
            $result = ['error'=>1,'msg'=>'添加失败'];
            return $result;
        }
    }

    //修改
    public function edit(){
        $info = self::getById(input("id"));
        return $info;
    }

    //修改保存
    public function editPost(){
        if(Request::isPost()) {
            $data = Request::except('file');
            if(empty($data['name']) || empty($data['url'])){
                $result = ['error'=>1,'msg'=>'请填写网站名称和网站地址'];
                return $result;
            }
            $data['update_time']=time();
            $result = self::save($data,['id'=>$data['id']]);
            if($result){
                $result = ['error'=>0,'msg'=>'修改成功'];
                return $result;
            }else{
                $result = ['error'=>1,'msg'=>'修改失败'];
                return $result;
            }
        }
    }

    //删除
    public function del(){
        if(Request::isPost()) {
            $id = input('post.id');
            if (empty($id)) {
                $result['status'] = 0;
                $result['msg'] = 'ID不存在!';
                return $result;
            }
            self::destroy($id);
            return $result = ['code'=>1,'msg'=>'删除成功!'];
        }
    }
我想了解的是,这么写的话有什么好处,或者有什么弊端和缺点,大家又是习惯怎么写的。
Model(模型)是应用程序中用于处理应用程序数据逻辑的部分。通常模型对象负责在数据库中存取数据。
Controller(控制器)是应用程序中处理用户交互的部分。通常控制器负责从视图读取数据,控制用户输入,并向模型发送数据。
最佳答案
评论( 相关
后面还有条评论,点击查看>>