tpframe之修改数据

修改数据跟添加数据类似,其实是完全写在一起的,为了更能清晰的知道流程,我这里还是分开写

接着增加的数据进行修改操作

一、修改控制器

在控制器里面添加edit操作

<?php
namespace app\frontend\controller;
use \tpfcore\Core;
class User extends FrontendBase
{
    public function add()
    {
    	IS_POST && $this->jump(Core::loadModel($this->name)->saveUser($this->param));
        return $this->fetch("add");
    }
    public function edit(){
    	IS_POST && $this->jump(Core::loadModel($this->name)->editUser($this->param));
        return $this->fetch("edit",[
        	"list"=>Core::loadModel($this->name)->listUser($this->param)
        ]);
    }
}

这里跟添加差不多,主要是查询要修改的那句,为了展示我要修改的是哪条语句,当然你要传递要修改的数据主键跟对应的值过来,例如id=1

二、服务层代码

<?php
// +----------------------------------------------------------------------
// | Author: yaoyihong <510974211@qq.com>
// +----------------------------------------------------------------------
namespace app\frontend\service;

use app\common\service\ServiceBase;
use \tpfcore\Core;
/**
 * 基础服务
 */
class User extends FrontendBase
{
	public function editUser($data){
		// 在进行数据操作前进行数据验证
		$validate=\think\Loader::validate($this->name);
		$validate_result = $validate->scene('edit')->check($data);
        if (!$validate_result) {    
            return [RESULT_ERROR, $validate->getError(), null];
        }
        return Core::loadModel($this->name)->saveObject($data);
	}
	public function listUser($data){
		return Core::loadModel($this->name)->listUser($data);
	}
}

三、逻辑层

<?php
namespace app\common\logic;
use \tpfcore\Core;
class User extends LogicBase
{
	public function saveUser($data){
		$result=self::saveObject($data);
		if($result){
			return [RESULT_SUCCESS,"操作成功"];
		}
		return [RESULT_ERROR,"操作失败"];
	}
	/*
        获取用户
    */
    public function listUser($data){

        return self::getList($data);

    }
}

省略edit场景验证.....

四、视图层

视图层拿来要修改的数据填充

<!DOCTYPE html>
<html>
<head>
<title>添加用户</title>
</head>
<body>
<form method="post" action="{:url('User/edit')}">
<input type="hidden" name="id" value="{$list[0]->id}" />
<input type="text" name="username" value="{$list[0]->username}" /><br/>
<input type="password" name="password" value="{$list[0]->password}" /><br/>
<input type="submit" value="操作操作"/>
</form>
</body>
</html>

这样就完成了一个修改的操作了

爆料早知道:文档中心文档已更新我有好想法