主頁 > 知識庫 > laravel model 兩表聯(lián)查示例

laravel model 兩表聯(lián)查示例

熱門標(biāo)簽:銀行業(yè)務(wù) Linux服務(wù)器 團(tuán)購網(wǎng)站 電子圍欄 Mysql連接數(shù)設(shè)置 服務(wù)器配置 阿里云 科大訊飛語音識別系統(tǒng)

1對一

定義一對一關(guān)聯(lián)

一對一關(guān)聯(lián)是很基本的關(guān)聯(lián)。例如一個 User 模型會對應(yīng)到一個 Phone 。 在 Eloquent 里可以像下面這樣定義關(guān)聯(lián):

class User extends Model {
 
 public function phone()
 {
  return $this->hasOne('App\Phone');
 }
 
}

傳到 hasOne 方法里的第一個參數(shù)是關(guān)聯(lián)模型的類名稱。定義好關(guān)聯(lián)之后,就可以使用 Eloquent 的動態(tài)屬性取得關(guān)聯(lián)對象:

$phone = User::find(1)->phone;

SQL 會執(zhí)行如下語句:

select * from users where id = 1
 
select * from phones where user_id = 1

注意, Eloquent 假設(shè)對應(yīng)的關(guān)聯(lián)模型數(shù)據(jù)庫表里,外鍵名稱是基于模型名稱。在這個例子里,默認(rèn) Phone 模型數(shù)據(jù)庫表會以 user_id 作為外鍵。如果想要更改這個默認(rèn),可以傳入第二個參數(shù)到 hasOne 方法里。更進(jìn)一步,您可以傳入第三個參數(shù),指定關(guān)聯(lián)的外鍵要對應(yīng)到本身的哪個字段:

return $this->hasOne('App\Phone', 'foreign_key');
 
return $this->hasOne('App\Phone', 'foreign_key', 'local_key');

查詢多條

 $rolePermissions = Permission::join('permission_role', 'permission_role.permission_id', '=', 'permissions.id')
   ->where('permission_role.role_id', $id)
   ->get();

以上這篇laravel model 兩表聯(lián)查示例就是小編分享給大家的全部內(nèi)容了,希望能給大家一個參考,也希望大家多多支持腳本之家。

您可能感興趣的文章:
  • laravel orm 關(guān)聯(lián)條件查詢代碼
  • Laravel Eloquent ORM 多條件查詢的例子
  • Laravel ORM 數(shù)據(jù)model操作教程

標(biāo)簽:蚌埠 萍鄉(xiāng) 衡水 廣元 江蘇 衢州 棗莊 大理

巨人網(wǎng)絡(luò)通訊聲明:本文標(biāo)題《laravel model 兩表聯(lián)查示例》,本文關(guān)鍵詞  ;如發(fā)現(xiàn)本文內(nèi)容存在版權(quán)問題,煩請?zhí)峁┫嚓P(guān)信息告之我們,我們將及時溝通與處理。本站內(nèi)容系統(tǒng)采集于網(wǎng)絡(luò),涉及言論、版權(quán)與本站無關(guān)。
  • 相關(guān)文章
  • 收縮
    • 微信客服
    • 微信二維碼
    • 電話咨詢

    • 400-1100-266