這篇文章主要介紹了laravel hasManyThrough怎么用,具有一定借鑒價(jià)值,感興趣的朋友可以參考下,希望大家閱讀完這篇文章之后大有收獲,下面讓小編帶著大家一起了解一下。
創(chuàng)新互聯(lián)網(wǎng)站建設(shè)服務(wù)商,為中小企業(yè)提供網(wǎng)站制作、網(wǎng)站設(shè)計(jì)服務(wù),網(wǎng)站設(shè)計(jì),網(wǎng)站運(yùn)營(yíng)等一站式綜合服務(wù)型公司,專(zhuān)業(yè)打造企業(yè)形象網(wǎng)站,讓您在眾多競(jìng)爭(zhēng)對(duì)手中脫穎而出創(chuàng)新互聯(lián)。
第一種情況,我稱之為傳導(dǎo)關(guān)聯(lián)表(簡(jiǎn)單模式)
國(guó)家有很多用戶,用戶有很多帖子
countries id - integer name - string users id - integer country_id - integer name - string posts id - integer user_id - integer title - string
查詢某個(gè)國(guó)家的所有帖子,怎么實(shí)現(xiàn)?
countries為本表,posts為要輸出的目標(biāo)表,users為中間表
return $this->hasManyThrough('App\Post', 'App\User', 'country_id', 'user_id');
第二種情況,有中間表情況(純中間表)
exam_paper(試卷表)id nameexam_paper_question(試卷與試題中間表)id exam_paper_id question_idexam_question(試題表)id name
我們要通過(guò)exam_paper的id查詢question
return $this->hasManyThrough('exam_question', 'exam_paper_question', 'exam_paper_id', 'id','id','question_id');
// 參數(shù)1 目標(biāo)表類(lèi)名 exam_question, // 參數(shù)2 樞紐表類(lèi)名 exam_paper_question, // 參數(shù)3 樞紐表中和當(dāng)前表關(guān)聯(lián)的字段名 'exam_paper_question.exam_paper_id', // 參數(shù)4 目標(biāo)表和樞紐表關(guān)聯(lián)的字段名 'exam_question.id', // 參數(shù)5 當(dāng)前表中和樞紐表關(guān)聯(lián)的字段名 'exam_paper.id', // 參數(shù)6 樞紐表和目標(biāo)表關(guān)聯(lián)的字段名 'exam_paper_question.question_id');
如果把當(dāng)前表記作A,目標(biāo)表記作B,中間表記作C,6個(gè)參數(shù)記作(B,C,CA,BC,AC,CB)
感謝你能夠認(rèn)真閱讀完這篇文章,希望小編分享的“l(fā)aravel hasManyThrough怎么用”這篇文章對(duì)大家有幫助,同時(shí)也希望大家多多支持創(chuàng)新互聯(lián),關(guān)注創(chuàng)新互聯(lián)行業(yè)資訊頻道,更多相關(guān)知識(shí)等著你來(lái)學(xué)習(xí)!