分享一个自己写的基于TP的关系模型(三)

这段时间对模型做了升级和优化,并将版本更新到TP3.2. 下载

下载后请将目录放置TP的Library目录下

1.数据节点优化,原来的节点为模型的名称或者表名,现在更新为定义关系的方法名

    public function test2(){
return $this->hasOne('Test2','test1_id');
} public function test3(){
return $this->hasMany('Test3','test1_id');
}

如这里:原来返回数组的关系节点的名称为 Test2和Test3,那么现在为test2,test3

关联节点:当使用关联查询后返回数组中关联表的键

$test1 = D('Test1');
$rs = $test1->with('test2')->select();

如这段代码返回数组的结构应该是这样的

[
['id' => 1,'name'=>'aaaa','test2'=>['id'=>1,'test1_id'=>1,'name'='test2']]
]

2.增加分页处理,TP原有的分页代码可能是这样的

    $User = M('User'); // 实例化User对象
$count = $User->where('status=1')->count();// 查询满足要求的总记录数
$Page = new \Think\Page($count,25);// 实例化分页类 传入总记录数和每页显示的记录数(25)
$show = $Page->show();// 分页显示输出
// 进行分页数据查询 注意limit方法的参数要使用Page类的属性
$list = $User->where('status=1')->order('create_time')->limit($Page->firstRow.','.$Page->listRows)->select();
$this->assign('list',$list);// 赋值数据集
$this->assign('page',$show);// 赋值分页输出
$this->display(); // 输出模板

那么现在可能是这样的

    $User = D('User'); // 实例化User对象
$User->where('status=1')->order('create_time')->paginate();//默认显示20行
$this->assign('list',$list);// 赋值数据集
$this->display(); // 输出模板

视图中输出分页

{$list->show('输入您的分页的模板路劲')}
上一篇:树梅派3b安装输入法


下一篇:Richedit使用大全