模型关联(主从表 banner banner_item)
界面上有多个banner位 每个banner位置具体显示图片个数 banner_item
查询banner 获取当前banner位信息以及具体banner_item信息
banner->banner_item 1->many
定义关联
class Banner extends Model
{
public function items() {
//当前banner有多个banner_item 通过banner_item外键banner_id与banner的主键id 相关联
return $this->hasMany('BannerItem','banner_id','id') ;
}
}
查询关联
//链式方法with('已经定义的关联方法名') 表示当前模型查询时需要关联 一个已定义的关联
$banner = BannerModel::with('items')->find($id) ;
------------------
sql日志打印信息
[运行时间:0.075166s] [吞吐率:13.30req/s] [内存消耗:4,111.25kb] [文件加载:48]
[ sql ] [ DB ] CONNECT:[ UseTime:0.000743s ] mysql:host=127.0.0.1;port=3306;dbname=zerg;charset=utf8
[ sql ] [ SQL ] SHOW COLUMNS FROM `banner` [ RunTime:0.005334s ]
[ sql ] [ SQL ] SELECT * FROM `banner` WHERE `id` = 1 LIMIT 1 [ RunTime:0.001314s ]
[ sql ] [ SQL ] SHOW COLUMNS FROM `banner_item` [ RunTime:0.001654s ]
[ sql ] [ SQL ] SELECT * FROM `banner_item` WHERE `banner_id` = 1 [ RunTime:0.000748s ]
嵌套关联
1>主表有多张从表
定义关联 banner表与banner_item X 都有