首先我们有一张博文表(tb_blog)和一张栏目表(tb_blog_cate)博文表中的cid字段保存所属栏目id现在要求查出一条博文的信息及它所属分类。
#####tb_blog表:
![ThinkPHP3.2视图模型实例详解](/uploads/content/948948948.png "ThinkPHP3.2视图模型实例详解")
#####tb_blog_cate表:
![ThinkPHP3.2视图模型实例详解](/uploads/content/131131131.png "ThinkPHP3.2视图模型实例详解")
下来建立一个视图模型 BlogViewModel.class.php,代码如下:
```
namespace BlogAdmin\Model;
use Think\Model\ViewModel;
/*
博文与栏目视图模型
*/
Class BlogViewModel extends ViewModel{
Public $viewFields = array(
//主表要获取的字段
'blog' => array('id', 'cid', 'title', 'click', 'addtime', 'blogpic'),
//副表要获取的字段 已经主表与副表的关联条件
'blog_cate' => array('name', '_on' => 'blog.cid = blog_cate.id'),
);
}
```
最后实例化这个模型:
```
$blog = D('BlogView')->select();
dump($blog);
```
运行结果
```
Array(
[0] => Array(
[id] => 1
[cid] => 1
[title] => test
[click] => 100
[addtime] => 1458097157
[blogpic] => /BlogPic/2016-03-16/56e8cc05ce9d3.png
[name] => PHP
)
)
```
这样就实现了我们的需求,希望能帮助大家。欢迎转载,请注明出处谢谢。