关联查询用的非常多,再日常中2张表。3张表、4张表甚至更多张表的关联查询都会出现!
如果我们只在控制器中采用__BIAOMING__ 【join】的方式查询会导致代码非常的长,并且复用率也特别低
所以还是使用model类进行关联查询省代码量,还提高了复用率!
下面就简单以3张表为例向大家示范一下tp5[thinkphp5]中的多表使用[2张表都会用,现省略]
1首先建立model类
我的是建立在common目录下,提供前后台共同使用
2:在主model类中添加关联
我的主model 是Siagngchuangjian
代码如下
hasOne('SigangchuangjianType','id','type_id'); } function OrganisationInformation() { return $this->hasOne('OrganisationInformation','id','ogid'); } }
其他2个model代码如下
下面是控制器调用的代码:
$res = Sigangchuangjian::with("SigangchuangjianType,OrganisationInformation")->where(["id"=>4])->select(); for ($i = 0;$i < count($res);$i++){ p($res[$i]->toArray()); } p($res); die;
其实这些方式在文档中都有,只是我们部分人看文档不可能面面俱到!
希望上述对各大网友有所帮助,举一反三、很重要!
本文首发于 micuer.com
转载请注明出处