laravel model 两表联查示例


Posted in PHP onOctober 24, 2019

1对一

定义一对一关联

一对一关联是很基本的关联。例如一个 User 模型会对应到一个 Phone 。 在 Eloquent 里可以像下面这样定义关联:

class User extends Model {
 
 public function phone()
 {
  return $this->hasOne('App\Phone');
 }
 
}

传到 hasOne 方法里的第一个参数是关联模型的类名称。定义好关联之后,就可以使用 Eloquent 的动态属性取得关联对象:

$phone = User::find(1)->phone;

SQL 会执行如下语句:

select * from users where id = 1
 
select * from phones where user_id = 1

注意, Eloquent 假设对应的关联模型数据库表里,外键名称是基于模型名称。在这个例子里,默认 Phone 模型数据库表会以 user_id 作为外键。如果想要更改这个默认,可以传入第二个参数到 hasOne 方法里。更进一步,您可以传入第三个参数,指定关联的外键要对应到本身的哪个字段:

return $this->hasOne('App\Phone', 'foreign_key');
 
return $this->hasOne('App\Phone', 'foreign_key', 'local_key');

查询多条

$rolePermissions = Permission::join('permission_role', 'permission_role.permission_id', '=', 'permissions.id')
   ->where('permission_role.role_id', $id)
   ->get();

以上这篇laravel model 两表联查示例就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持三水点靠木。

PHP 相关文章推荐
php生成EXCEL的东东
Oct 09 PHP
dedecms模板标签代码官方参考
Mar 17 PHP
PHP has encountered an Access Violation at 7C94BD02解决方法
Aug 24 PHP
php数组函数序列之array_push() 数组尾部添加一个或多个元素(入栈),返回新长度。
Nov 07 PHP
基于php-fpm 参数的深入理解
Jun 03 PHP
基于php常用函数总结(数组,字符串,时间,文件操作)
Jun 27 PHP
Smarty foreach控制循环次数的实现详解
Jul 03 PHP
php时间函数用法分析
May 28 PHP
Ajax中的JSON格式与php传输过程全面解析
Nov 14 PHP
PHP中number_format()函数的用法讲解
Apr 08 PHP
php用户名的密码加密更安全的方法
Jun 21 PHP
Yii框架常见缓存应用实例小结
Sep 09 PHP
Laravel框架之解决前端显示图片问题
Oct 24 #PHP
laravel中的fillable和guarded属性详解
Oct 23 #PHP
laravel5.6中的外键约束示例
Oct 23 #PHP
laravel5.6实现数值转换
Oct 23 #PHP
laravel框架之数据库查出来的对象实现转化为数组
Oct 23 #PHP
Laravel 实现Eloquent模型分组查询并返回每个分组的数量 groupBy()
Oct 23 #PHP
laravel 执行迁移回滚示例
Oct 23 #PHP
You might like
PHP错误提示的关闭方法详解
2013/06/23 PHP
php中print(),print_r(),echo()的区别详解
2014/12/01 PHP
javascript 进阶篇1 正则表达式,cookie管理,userData
2012/03/14 Javascript
有关javascript的性能优化 (repaint和reflow)
2013/04/12 Javascript
js 调用父窗口的具体实现代码
2013/07/15 Javascript
点击表单提交时出现jQuery没有权限的解决方法
2014/07/23 Javascript
jQuery搜索同辈元素方法
2015/02/10 Javascript
浅谈JavaScript数据类型
2015/03/03 Javascript
jQuery支持动态参数将函数绑定到事件上的方法
2015/03/17 Javascript
浅析AngularJS Filter用法
2015/12/28 Javascript
使用postMesssage()实现iframe跨域页面间的信息传递
2016/03/29 Javascript
概述如何实现一个简单的浏览器端js模块加载器
2016/12/07 Javascript
JS中用childNodes获取子元素换行会产生一个子元素
2016/12/08 Javascript
canvas实现钟表效果
2017/02/13 Javascript
在 Angular 中使用Chart.js 和 ng2-charts的示例代码
2017/08/17 Javascript
nodejs 日志模块winston的使用方法
2018/05/02 NodeJs
vue.js动画中的js钩子函数的实现
2018/07/06 Javascript
Javascript 对象(object)合并操作实例分析
2019/07/30 Javascript
优雅的使用javascript递归画一棵结构树示例代码
2019/09/22 Javascript
小程序实现图片预览裁剪插件
2019/11/22 Javascript
JS字符串和数组如何实现相互转化
2020/07/02 Javascript
vue v-on:click传递动态参数的步骤
2020/09/11 Javascript
通过实例解析json与jsonp原理及使用方法
2020/09/27 Javascript
浅谈Python 的枚举 Enum
2017/06/12 Python
11月编程语言排行榜 Python逆袭C#上升到第4
2017/11/15 Python
python查看列的唯一值方法
2018/07/17 Python
利用python实现对web服务器的目录探测的方法
2019/02/26 Python
不归路系列:Python入门之旅-一定要注意缩进!!!(推荐)
2019/04/16 Python
pyinstaller打包找不到文件的问题解决
2020/04/15 Python
CSS3 box-shadow属性实例详解
2020/06/19 HTML / CSS
大学生职业生涯规划书前言
2014/01/09 职场文书
学习十八大的心得体会
2014/09/12 职场文书
统招统分证明
2015/06/23 职场文书
2015中学政教处工作总结
2015/07/22 职场文书
Python循环之while无限迭代
2022/04/30 Python
mysql幻读详解实例以及解决办法
2022/06/16 MySQL