laravel ORM 一对一 一对多 多对多 原生的MYSQL怎么写?
问题描述
laravel ORM 一对一、一对多、多对多、原生的MYSQL怎么写?laravel ORM 的with原理是什么?如题
问题解答
回答1:class User extends Model{public function Roles() {return $this->hasOne('AppRole', ’user_id’, ’id’); }}class Message extends Model{public function User() {return $this->belongsTo('AppUser', ’user_id’, ’id’); }}//Controller 输出sql看DB::listen(function($sql,$binds){ dump($sql,$binds);});$role = User::find(1)->Roles;//一对多类似//select * from `users` where `id` = 1 limit 1 ;//select * from `roles` where `user_id` = 1 limit 1 ; $mess = Message::with(’User’)->where(’type’,$type)->get();//select *from messages where type=?; 查询出用户id列表//select * from `users` where `id` in (?);根据id列表查询用户信息
相关文章:
1. android-studio - android studio自带模拟器中的本地“图库”所对应的路径是什么?2. 【python小白】 问关于property的顺序问题3. angular.js - angular1如何使用跨域后的得到的数据4. angular.js - 如何在指令里使用ng-click5. angular.js input输入正确数据框变红色6. JS怎么给每相隔一行的TD添加filter滤镜?7. flexbox - css3[flex-shrink]属性在子项有 padding/box-sizing 属性时,是如何计算子项宽度的?8. android-studio - Android Studio 中有没有类似C#的#if DEBUG功能9. 9.png中在同一方向上设置多个拉伸位置,在android studio中怎么弄出来?10. angular.js - Angular 像这种重复判断的表达式 有什么好的解决办法吗?~