博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
laravel之orm模型关联
阅读量:4356 次
发布时间:2019-06-07

本文共 1099 字,大约阅读时间需要 3 分钟。

1、一对一关系

$this->hasOne(关联model[关联model的联系键][model的联系键]);

return $this->hasOne(Extuser::class, 'uid', 'id');

关联表中的外键名 user_id   本表中的主键IDid

return $this->hasOne(Extuser::class);

编写一对一关系

// 用户主表对用户从表  一对一 模型中方法 public function userExt() {
return $this->hasOne(UserExt::class); }
//控制器中使用
$user = User::with('userExt')->find(1); dump($user->toArray());

2、一对多关系

在实际的项目中一个用户发表多篇的文章,这样的关系就是一对多的关系。

$this->hasMany(关联model[关联model的联系键][model的联系键]);

return $this->hasMany(App\Phone::class, 'foreign_key', 'local_key');

// 一对多 模型 public function articles() {
return $this->hasMany(Article::class,'uid'); } //控制器
$data = User::with('articles')->find(1); dump($data->toArray()); 3、多对多关系

$this-> belongsToMany(关联表model,中间表表名,中间表中本model关联ID,中间表中关联modelID);

return $this->belongsToMany(App\User::class, 'user_auth_table', 'user_id', 'auth_id');

// 多对多 模型 public function auths(){
return $this->belongsToMany(Auth::class,'user_auth','user_id','auth_id'); }
$user = User::find(1); $data = $user->auths(); dump($data->get()->toArray());

 

 
 
 

转载于:https://www.cnblogs.com/konglingxin/p/11302165.html

你可能感兴趣的文章
ZOJ 2532 Internship
查看>>
HDU 3452 Bonsai
查看>>
[Erlang12] Mnesia分布式应用
查看>>
图的遍历 | 1013 连通块块数
查看>>
Kinect 开发 —— 进阶指引(上)
查看>>
python学习笔记(六)time、datetime、hashlib模块
查看>>
uva489(需要考虑周全)
查看>>
C-关键字(二)
查看>>
排序笔记
查看>>
下载360doc.com里的文章
查看>>
【转】globk和glorg中使用的apr文件
查看>>
导航,头部,CSS基础
查看>>
PostMessage 解析
查看>>
Java语法基础(一)
查看>>
as3 sort
查看>>
hdu 2680 Choose the best route Dijkstra 虚拟点
查看>>
26. Remove Duplicates from Sorted Array java solutions
查看>>
[bzoj1185] [HNOI2007]最小矩形覆盖
查看>>
全景图制作详解
查看>>
React之todo-list
查看>>