Maison  >  Article  >  php教程  >  关系模型(二)

关系模型(二)

WBOY
WBOYoriginal
2016-06-07 11:38:082002parcourir

将代码升级为TP3.2的版本,并增加了分页处理和其他功能的一些优化
这段时间对模型做了升级和优化,并将版本更新到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('输入您的分页的模板路劲')}

附件 WangDong.rar ( 5.46 KB 下载:4 次 )

AD:真正免费,域名+虚机+企业邮箱=0元

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn