Yii2 hasOne(), hasMany() 實(shí)現(xiàn)三表關(guān)聯(lián)的方法(兩種)
背景:
現(xiàn)有 group (組)和 user (用戶(hù)) 兩種實(shí)例。
一個(gè) group 中可以擁有多個(gè) user,一個(gè) user 也可以屬于有多個(gè) group (多對(duì)多關(guān)系)
GroupUserRelation 表用于綁定組合組員的關(guān)系(使用id綁定)
字段有 id, group_id, user_id
現(xiàn)有User(用戶(hù))表, 需要獲取 其所屬的所有用戶(hù)組的信息,需要使用hasMany()進(jìn)行多表關(guān)聯(lián)。
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() 實(shí)現(xiàn)三表關(guān)聯(lián)的方法(兩種),希望對(duì)大家有所幫助,如果大家有任何疑問(wèn)請(qǐng)給我留言,小編會(huì)及時(shí)回復(fù)大家的。在此也非常感謝大家對(duì)腳本之家網(wǎng)站的支持!
- Yii2中關(guān)聯(lián)查詢(xún)簡(jiǎn)單用法示例
- Yii2實(shí)現(xiàn)讓關(guān)聯(lián)字段支持搜索功能的方法
- Yii2.0表關(guān)聯(lián)查詢(xún)實(shí)例分析
- Yii2中使用join、joinwith多表關(guān)聯(lián)查詢(xún)
- Yii2 ActiveRecord多表關(guān)聯(lián)及多表關(guān)聯(lián)搜索的實(shí)現(xiàn)
- Yii2中hasOne、hasMany及多對(duì)多關(guān)聯(lián)查詢(xún)的用法詳解
- Yii2中多表關(guān)聯(lián)查詢(xún)hasOne hasMany的方法
相關(guān)文章
laravel7學(xué)習(xí)之無(wú)限級(jí)分類(lèi)的最新實(shí)現(xiàn)方法
這篇文章主要給大家介紹了關(guān)于laravel7學(xué)習(xí)之無(wú)限級(jí)分類(lèi)的最新實(shí)現(xiàn)方法,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧2020-09-09php socket通信簡(jiǎn)單實(shí)現(xiàn)
這篇文章主要為大家詳細(xì)介紹了php簡(jiǎn)單實(shí)現(xiàn)socket通信的相關(guān)資料,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2016-11-11PHP時(shí)間戳與日期之間轉(zhuǎn)換的實(shí)例介紹
本篇文章小編為大家介紹,PHP時(shí)間戳與日期之間轉(zhuǎn)換的實(shí)例介紹。需要的朋友參考下2013-04-04thinkPHP多表查詢(xún)及分頁(yè)功能實(shí)現(xiàn)方法示例
這篇文章主要介紹了thinkPHP多表查詢(xún)及分頁(yè)功能實(shí)現(xiàn)方法,結(jié)合具體實(shí)例形式分析了thinkPHP多表查詢(xún)以及查詢(xún)結(jié)果的分頁(yè)顯示相關(guān)實(shí)現(xiàn)技巧,需要的朋友可以參考下2017-07-07Yii2使用小技巧之通過(guò) Composer 添加 FontAwesome 字體資源
前天幫同事改個(gè)十年前的網(wǎng)站 bug,頁(yè)面上一堆 include require 不禁讓人抱頭痛哭??吹?V2EX 上的討論說(shuō),寫(xiě) PHP 不用框架等同于耍流氓。Yii Framework 是我使用了 2 年多的 PHP 框架,器大活好,皮實(shí)耐操。 Yii2 還在 Beta 中,不過(guò)不影響拿來(lái)預(yù)研。2014-06-06淺談php使用curl模擬多線(xiàn)程發(fā)送請(qǐng)求
這篇文章主要介紹了php使用curl模擬多線(xiàn)程發(fā)送請(qǐng)求,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧2019-03-03php each 返回?cái)?shù)組中當(dāng)前的鍵值對(duì)并將數(shù)組指針向前移動(dòng)一步實(shí)例
php each函數(shù)用于獲取數(shù)組的鍵值對(duì),并將數(shù)組指針向前移動(dòng)一步, each函數(shù)經(jīng)常和list結(jié)合使用來(lái)遍歷數(shù)組。本文章向大家介紹each的基本使用方法,需要的朋友可以參考下2016-11-11