博客列表 >thinkphp5 模型关联取出的数据再关联另一个模型

thinkphp5 模型关联取出的数据再关联另一个模型

霸霸的博客
霸霸的博客原创
2018年12月17日 00:40:092843浏览

商户表(business)id关联 商品表(goods)的bid,商品表的cid关联 商品分类表(goods_category)的id。

商户的id取出所有属于他的商品,顺便取出商品的分类名;

在BusinessModel中添加:

public function goods()
	{
		return $this->hasMany('Goods','bid','id');
	}

在goodsModel中添加:

	public function category()
	{
		return $this
		->belongsTo('GoodsCategory','cid','id')
		->bind([
			'cateName' => 'name',
		]);  // 这里可以将需要的数据直接绑定到对象中
	}

在控制器中使用:

先获取这个用户的对象:

$business = Business::get(Session('userId'));

获取它的商品以及商品的分类:

// 模型关联,可以用 '关联名()' 获取关联的数据的对象载对数据进行分页

    $goodsList = $business->goods()->with('category')->where($map)->paginate(5);

由于商品和分类是不只一条数据的所以用with关联预载入;

这样就可以获取我们所需要的数据啦

声明:本文内容转载自脚本之家,由网友自发贡献,版权归原作者所有,如您发现涉嫌抄袭侵权,请联系admin@php.cn 核实处理。
全部评论
文明上网理性发言,请遵守新闻评论服务协议