首页 > 其他 > 详细

laravel之orm模型关联

时间:2019-08-05 12:53:32      阅读:64      评论:0      收藏:0      [点我收藏+]

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());

 






laravel之orm模型关联

原文:https://www.cnblogs.com/konglingxin/p/11302165.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!