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


閱讀排行
本欄相關(guān)
- 04-02php本站才可以請求數(shù)據(jù) php本地數(shù)據(jù)庫
- 04-02關(guān)于txt數(shù)據(jù)庫php的信息
- 04-02php打印請求數(shù)據(jù) php打印輸出結(jié)果
- 04-02網(wǎng)頁里php操作數(shù)據(jù)庫 php網(wǎng)頁例子
- 04-02php插入數(shù)據(jù)庫為亂碼 php連接數(shù)據(jù)庫亂
- 04-02php數(shù)據(jù)庫地址 phpstudy 數(shù)據(jù)庫
- 04-02php數(shù)據(jù)庫數(shù)據(jù)相加 php數(shù)據(jù)庫添加數(shù)據(jù)
- 04-02數(shù)據(jù)權(quán)限架構(gòu)思路php 數(shù)據(jù)權(quán)限設(shè)計方
- 04-02php數(shù)據(jù)庫輸入變量 php里輸出數(shù)據(jù)庫數(shù)
- 04-02php如何用導入數(shù)據(jù) php用來導入其他文
隨機閱讀
- 01-11ajax實現(xiàn)頁面的局部加載
- 01-10SublimeText編譯C開發(fā)環(huán)境設(shè)置
- 04-02jquery與jsp,用jquery
- 01-10delphi制作wav文件的方法
- 08-05織夢dedecms什么時候用欄目交叉功能?
- 08-05DEDE織夢data目錄下的sessions文件夾有什
- 01-10使用C語言求解撲克牌的順子及n個骰子
- 01-11Mac OSX 打開原生自帶讀寫NTFS功能(圖文
- 01-10C#中split用法實例總結(jié)
- 08-05dedecms(織夢)副欄目數(shù)量限制代碼修改