下面我们以文章主表为示例演示
文章表:article
分类表:admin
用户表:category
当我们想查询一篇文章,而且同时想获得该文章发布的作者和该文章的分类,如果按照保守php查询方法,只能先查询article获取user_id和category_id再根据user_id和category_id来分别查询admin用户表和category分类表获取响应的信息。
但我们现在就来讲解一下如何实用thinkphp视图关联查询同时获取上面的信息。
thinkphp的基本操作我在这里就多说了。
下面是3.1的响应代码,3.2也是差不多,不明白的留言问我。
ArticleAction.class.php 控制文件
public function index(){ $M = D('ArticleView'); //这里需要用D实例化,而且注意对应文件名ArtcileView $list = $M->where()->select(); }
ArticleViewModel.class.php 视图模型文件
<?php class ArticleViewModel extends ViewModel { protected $viewFields = array( 'Article'=>array('*'), 'Admin'=>array('nickname'=>'creater', '_on'=>'Article.user_id=Admin.id'), 'ArticleCategory'=>array('name'=>'categoryName', '_as'=>'category', '_on'=>'Article.category_id=category.id'), ); } ?>
温馨提示:这里需要继承viewModel模型了。