Yii2 hasOne(), hasMany() 实现三表关联的方法(两种)

 更新时间:2017年02月15日 10:18:12   作者:四魂の魊  
这篇文章主要介绍了Yii2 hasOne(), hasMany() 实现三表关联的方法(两种),非常不错,具有参考借鉴价值,需要的朋友可以参考下

背景:

现有 group (组)和 user (用户) 两种实例。

一个 group 中可以拥有多个 user,一个 user 也可以属于有多个 group (多对多关系)

GroupUserRelation 表用于绑定组合组员的关系(使用id绑定)

字段有 id, group_id, user_id

现有User(用户)表, 需要获取 其所属的所有用户组的信息,需要使用hasMany()进行多表关联。

User.id => GroupUserRelation.user_id
GroupUserRelation.group_id => Group.id

方法1

public function getGroup()
{
  return $this->hasMany(Group::className(), ['id' => 'group_id'])
     ->viaTable(GroupUserRelation::tableName(), ['user_id' => 'id']);
}

方法2

public function getGroup()
{
  return $this->hasMany(Group::className(), ['id' => 'group_id'])
     ->viaTable('groupUserRelation');
}
public function getGroupUserRelation()
{
  return $this->hasMany(GroupUserRelation::tableName(), ['user_id' => 'id']);
}

以上所述是小编给大家介绍的Yii2 hasOne(), hasMany() 实现三表关联的方法(两种),希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对脚本之家网站的支持!

相关文章

  • Laravel核心解读之异常处理的实践过程

    Laravel核心解读之异常处理的实践过程

    这篇文章主要给大家介绍了关于Laravel核心解读之异常处理的相关资料,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面来一起学习学习吧
    2019-02-02
  • 分享PHP header函数使用教程

    分享PHP header函数使用教程

    在php语言中,header()这个函数很有用的,尤其在用到ajax时候,他会帮你解决一些意想不到的问题。下面是header的一些详细讲解。希望对phper有帮助
    2013-09-09
  • 利用中国天气预报接口实现简单天气预报

    利用中国天气预报接口实现简单天气预报

    这篇文章主要介绍了利用中国天气预报接口实现简单天气预报的示例,大家参考使用吧
    2014-01-01
  • PHP cURL获取微信公众号access_token的实例

    PHP cURL获取微信公众号access_token的实例

    这篇文章主要介绍了PHP cURL获取微信公众号access_token的实例,需要的朋友可以参考下
    2018-04-04
  • 浅谈Yii乐观锁的使用及原理

    浅谈Yii乐观锁的使用及原理

    本篇文章主要介绍了浅谈Yii2 乐观锁与悲观锁原理,小编觉得挺不错的,现在分享给大家,也给大家做个参考。一起跟随小编过来看看吧
    2017-07-07
  • php微信开发之音乐回复功能

    php微信开发之音乐回复功能

    这篇文章主要为大家详细介绍了php微信开发之音乐回复功能,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2018-06-06
  • Laravel框架中集成MongoDB和使用详解

    Laravel框架中集成MongoDB和使用详解

    今天小编就为大家分享一篇Laravel框架中集成MongoDB和使用详解,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2019-10-10
  • php记录搜索引擎爬行记录的实现代码

    php记录搜索引擎爬行记录的实现代码

    这篇文章主要介绍了php记录搜索引擎爬行记录的实现代码,然后在文中给大家补充介绍了php获取各搜索蜘蛛爬行记录的代码,需要的朋友可以参考下
    2018-03-03
  • PHP Cookei记录用户历史浏览信息的代码

    PHP Cookei记录用户历史浏览信息的代码

    购物类网站有时候需要了解用户最近的需求,收集和推送用户的查看记录成为了大部分此类的网站不可缺少的功能,下面是本人在开发项目中自己写的方法,一来留有保存,二来和大家分享
    2016-02-02
  • php+croppic.js实现剪切上传图片功能

    php+croppic.js实现剪切上传图片功能

    最近做项目遇到这样的需求,需要实现裁剪图片上传,接下来通过本文给大家分享基于php+croppic.js实现剪切上传图片功能,需要的朋友可以参考下
    2018-08-08

最新评论