Laravel5.1 框架模型遠(yuǎn)層一對(duì)多關(guān)系實(shí)例分析
本文實(shí)例講述了Laravel5.1 框架模型遠(yuǎn)層一對(duì)多關(guān)系。分享給大家供大家參考,具體如下:
遠(yuǎn)層一對(duì)多我們可以通過(guò)一個(gè)例子來(lái)充分的了解它:
每一篇文章都肯定有并且只有一個(gè)發(fā)布者 發(fā)布者可以有多篇文章,這是一個(gè)一對(duì)多的關(guān)系。一個(gè)發(fā)布者可以來(lái)自于一個(gè)國(guó)家 但是一個(gè)國(guó)家可以有多個(gè)發(fā)布者,這又是一個(gè)一對(duì)多關(guān)系,那么 這其中存在一個(gè)遠(yuǎn)層的一對(duì)多就是"國(guó)家和文章的關(guān)系"。國(guó)家表可以通過(guò)發(fā)布者表遠(yuǎn)層關(guān)聯(lián)到文章表。
1 實(shí)現(xiàn)遠(yuǎn)層一對(duì)多關(guān)系
1.1 文章表結(jié)構(gòu)
public function up() { Schema::create('articles', function (Blueprint $table) { $table->increments('id'); $table->string('title'); $table->text('body'); $table->integer('user_id'); $table->timestamps(); }); }
1.2 在users表中添加一列
public function up() { Schema::table('users', function (Blueprint $table) { $table->integer('country_id'); }); } public function down() { Schema::table('users', function (Blueprint $table) { $table->dropColumn('country_id'); }); }
1.3 國(guó)家表結(jié)構(gòu)
public function up() { Schema::create('countries', function (Blueprint $table) { $table->increments('id'); $table->string('name'); $table->timestamps(); }); }
1.4 編寫(xiě)一對(duì)多關(guān)系
首先是Country和User的關(guān)系:
Country模型:
public function users() { return $this->hasMany(User::class); }
User模型:
public function country() { return $this->belongsTo(Country::class); }
然后是User和Article的關(guān)系:
User模型:
public function articles() { return $this->hasMany(Article::class); }
Article模型:
public function user() { return $this->belongsTo(User::class); }
1.5 訪(fǎng)問(wèn)遠(yuǎn)程一對(duì)多關(guān)系
這是今天的主要內(nèi)容,實(shí)現(xiàn)Country可遠(yuǎn)層查找到Article:
public function articles() { /** * 建議第一個(gè)和第二個(gè)參數(shù)寫(xiě)全,第三個(gè)第四個(gè)參數(shù)可省略使用默認(rèn)(如果默認(rèn)的沒(méi)問(wèn)題)。 */ return $this->hasManyThrough(Article::class, User::class, 'country_id', 'user_id'); }
更多關(guān)于Laravel相關(guān)內(nèi)容感興趣的讀者可查看本站專(zhuān)題:《Laravel框架入門(mén)與進(jìn)階教程》、《php優(yōu)秀開(kāi)發(fā)框架總結(jié)》、《php面向?qū)ο蟪绦蛟O(shè)計(jì)入門(mén)教程》、《php+mysql數(shù)據(jù)庫(kù)操作入門(mén)教程》及《php常見(jiàn)數(shù)據(jù)庫(kù)操作技巧匯總》
希望本文所述對(duì)大家基于Laravel框架的PHP程序設(shè)計(jì)有所幫助。
上一篇:Laravel5.1 框架模型創(chuàng)建與使用方法實(shí)例分析
欄 目:PHP編程
下一篇:Laravel5.1 框架數(shù)據(jù)庫(kù)操作DB運(yùn)行原生SQL的方法分析
本文標(biāo)題:Laravel5.1 框架模型遠(yuǎn)層一對(duì)多關(guān)系實(shí)例分析
本文地址:http://mengdiqiu.com.cn/a1/PHPbiancheng/10975.html
您可能感興趣的文章
- 01-11thinkphp框架類(lèi)庫(kù)擴(kuò)展操作示例
- 01-11關(guān)于Yii2框架跑腳本時(shí)內(nèi)存泄漏問(wèn)題的分析與解決
- 01-11php 實(shí)現(xiàn)簡(jiǎn)單的登錄功能示例【基于thinkPHP框架】
- 01-11Laravel框架Blade模板簡(jiǎn)介及模板繼承用法分析
- 01-11Laravel框架基礎(chǔ)語(yǔ)法與知識(shí)點(diǎn)整理【模板變量、輸出、include引入
- 01-11Laravel框架Eloquent ORM刪除數(shù)據(jù)操作示例
- 01-11Laravel框架Eloquent ORM修改數(shù)據(jù)操作示例
- 01-11Laravel框架Eloquent ORM簡(jiǎn)介、模型建立及查詢(xún)數(shù)據(jù)操作詳解
- 01-11laravel5.1框架下的批量賦值實(shí)現(xiàn)方法分析
- 01-11laravel5.5框架的上傳圖片功能實(shí)例分析【僅傳到服務(wù)器端】


閱讀排行
- 1C語(yǔ)言 while語(yǔ)句的用法詳解
- 2java 實(shí)現(xiàn)簡(jiǎn)單圣誕樹(shù)的示例代碼(圣誕
- 3利用C語(yǔ)言實(shí)現(xiàn)“百馬百擔(dān)”問(wèn)題方法
- 4C語(yǔ)言中計(jì)算正弦的相關(guān)函數(shù)總結(jié)
- 5c語(yǔ)言計(jì)算三角形面積代碼
- 6什么是 WSH(腳本宿主)的詳細(xì)解釋
- 7C++ 中隨機(jī)函數(shù)random函數(shù)的使用方法
- 8正則表達(dá)式匹配各種特殊字符
- 9C語(yǔ)言十進(jìn)制轉(zhuǎn)二進(jìn)制代碼實(shí)例
- 10C語(yǔ)言查找數(shù)組里數(shù)字重復(fù)次數(shù)的方法
本欄相關(guān)
- 04-02php本站才可以請(qǐng)求數(shù)據(jù) php本地?cái)?shù)據(jù)庫(kù)
- 04-02關(guān)于txt數(shù)據(jù)庫(kù)php的信息
- 04-02php打印請(qǐng)求數(shù)據(jù) php打印輸出結(jié)果
- 04-02網(wǎng)頁(yè)里php操作數(shù)據(jù)庫(kù) php網(wǎng)頁(yè)例子
- 04-02php插入數(shù)據(jù)庫(kù)為亂碼 php連接數(shù)據(jù)庫(kù)亂
- 04-02php數(shù)據(jù)庫(kù)地址 phpstudy 數(shù)據(jù)庫(kù)
- 04-02php數(shù)據(jù)庫(kù)數(shù)據(jù)相加 php數(shù)據(jù)庫(kù)添加數(shù)據(jù)
- 04-02數(shù)據(jù)權(quán)限架構(gòu)思路php 數(shù)據(jù)權(quán)限設(shè)計(jì)方
- 04-02php數(shù)據(jù)庫(kù)輸入變量 php里輸出數(shù)據(jù)庫(kù)數(shù)
- 04-02php如何用導(dǎo)入數(shù)據(jù) php用來(lái)導(dǎo)入其他文
隨機(jī)閱讀
- 01-11ajax實(shí)現(xiàn)頁(yè)面的局部加載
- 01-10SublimeText編譯C開(kāi)發(fā)環(huán)境設(shè)置
- 04-02jquery與jsp,用jquery
- 01-10delphi制作wav文件的方法
- 08-05織夢(mèng)dedecms什么時(shí)候用欄目交叉功能?
- 08-05DEDE織夢(mèng)data目錄下的sessions文件夾有什
- 01-10使用C語(yǔ)言求解撲克牌的順子及n個(gè)骰子
- 01-11Mac OSX 打開(kāi)原生自帶讀寫(xiě)NTFS功能(圖文
- 01-10C#中split用法實(shí)例總結(jié)
- 08-05dedecms(織夢(mèng))副欄目數(shù)量限制代碼修改