后盾网lavarel视频项目---模型一对多关联简单实例
生活随笔
收集整理的這篇文章主要介紹了
后盾网lavarel视频项目---模型一对多关联简单实例
小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.
后盾網(wǎng)lavarel視頻項(xiàng)目---模型一對(duì)多關(guān)聯(lián)簡(jiǎn)單實(shí)例
一、總結(jié)
一句話總結(jié):
在模型中定義一個(gè)方法來設(shè)置一對(duì)多關(guān)聯(lián):return $this->hasMany(Video::class);
<?phpnamespace App\Model;use Illuminate\Database\Eloquent\Model;class Lesson extends Model {/*** 與視頻表模型的一對(duì)多關(guān)聯(lián)* @return \Illuminate\Database\Eloquent\Relations\HasMany*/public function videos(){return $this->hasMany(Video::class);} }?
?
1、控制器中怎么取設(shè)置了一對(duì)多的模型的數(shù)據(jù)?
先找到lesson數(shù)據(jù)(Lesson::find(1)),然后找到一對(duì)多設(shè)置(->videos()),最后取數(shù)據(jù)(->get()):$d=Lesson::find(1)->videos()->get();
public function create(){$d=Lesson::find(1)->videos()->get();dd($d->toArray());return view('admin.lesson.create');}?
?
2、toArray方法將集合數(shù)據(jù)轉(zhuǎn)成數(shù)組?
?$d=Lesson::find(1)->videos()->get(); dd($d->toArray());
public function create(){$d=Lesson::find(1)->videos()->get();dd($d->toArray());return view('admin.lesson.create');}?
?
?
?
二、模型一對(duì)多關(guān)聯(lián)簡(jiǎn)單實(shí)例
1、數(shù)據(jù)表
?
?lessons表中一條記錄對(duì)應(yīng)videos表中多條記錄
?
?lessons表
?
?videos表
?
2、模型
app/Model/Video.php
<?phpnamespace App\Model;use Illuminate\Database\Eloquent\Model;class Video extends Model {protected $guarded=[]; }?
app/Model/Lesson.php
1 <?php 2 3 namespace App\Model; 4 5 use Illuminate\Database\Eloquent\Model; 6 7 class Lesson extends Model 8 { 9 /** 10 * 與視頻表模型的一對(duì)多關(guān)聯(lián) 11 * @return \Illuminate\Database\Eloquent\Relations\HasMany 12 */ 13 public function videos(){ 14 return $this->hasMany(Video::class); 15 } 16 }第10行:一對(duì)多設(shè)置的核心代碼
lavarel參考手冊(cè)位置:https://learnku.com/docs/laravel/5.7/eloquent-relationships/2295#one-to-many
?
3、控制器
app/Http/Controllers/Admin/LessonController.php
1 public function create() 2 { 3 $d=Lesson::find(1)->videos()->get(); 4 dd($d->toArray()); 5 return view('admin.lesson.create'); 6 }第3行:videos方法是Lesson模型中定義的
第4行:toArray方法將數(shù)據(jù)集轉(zhuǎn)成數(shù)組
?
4、結(jié)果
?
成功獲得需要的兩條數(shù)據(jù)
?
轉(zhuǎn)載于:https://www.cnblogs.com/Renyi-Fan/p/11546517.html
總結(jié)
以上是生活随笔為你收集整理的后盾网lavarel视频项目---模型一对多关联简单实例的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 1209F - Koala and No
- 下一篇: 黑马lavarel教程---3、数据库和