美文网首页微信小程序开发
小程序全栈学习-两种模型关联关系的描述和查询

小程序全栈学习-两种模型关联关系的描述和查询

作者: Answer_ccbb | 来源:发表于2019-03-18 08:37 被阅读28次
小程序全栈学习-两种模型关联关系的描述和查询

这里描述两种稍微复杂一点的关联关系的实现和查询,一种是模型A同时和模型B和C关联;两一种是模型A和模型B关联,模型B和模型C关联。

第一种关联,可以再模型A中建立两个关联函数,表示关联:

public function items(){return $this->hasMany('BannerItem','banner_id','id');}

public function items1(){return $this->hasMany(‘BannerItem’,‘banner_id’,‘id’);}//items 和items1表示两个关联关系。

这种关联关系的查询:

$banner = BannerModel::with(['items','itemss1'])->find($id);//查询时with方法接收一个数组,数组的元素是定义关联关系函数的函数名。

第二种关联,可以再模型A中定义和B的关联,在模型B中定义和C的关联,定义的方法和普通定义相同。

这种关联关系的查询:

$banner = BannerModel::with(['items','items.img'])->find($id);//注意数组的第二个元素,用'.'连接两个关联函数的函数名。

另外:

表示一对多的对应关系的函数为:hasMany(‘关联模型名’,‘外键名’,'本模型主键名'),

表示一对一关系的函数为:belongsTo(‘关联模型名’,‘外键名’,'本模型主键名')。

相关文章

网友评论

    本文标题:小程序全栈学习-两种模型关联关系的描述和查询

    本文链接:https://www.haomeiwen.com/subject/gpmeuqtx.html