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. 如何解决docker宿主机无法访问容器中的服务?2. javascript - webpack构建工具重构代码的流程是怎么样的?3. Java中main方法里面的参数一定要是String []args吗?4. css3 - 求css页面解决方案5. html5 - 自己的H5页面如何集成支付宝支付6. HTML5表单必填属性设置自定义验证消息?7. javascript - 想做一个canvas的触摸画板,但屏幕会在画的时候滚来滚去,如何阻止?8. 系统重装后,恢复mysql5.5?9. mysql 5个left关键 然后再用搜索条件 几千条数据就会卡,如何解决呢10. mysql - sql 左连接结果union右连接结果,导致重复性计算怎么解决?

网公网安备