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. html5 - 微信的wxLocalResource部分机型为什么不能正确的显示图片?2. weex - Android 原生Vue.js 使用 justify-content: flex-end; 不起作用3. node.js - mongo TTL 数据过期不删除4. html5 - 页面元素使用了rem,gulp-css-spritesmith 插件导出后错位问题5. css - The element has no supported sources.???6. html5 - node静态资源服务器设置了Cache-Control,但浏览器从来不走3047. docker绑定了nginx端口 外部访问不到8. 微信无法扫描phpqrcode生成的二维码9. node.js - vue项目在c盘外,npm run dev 出错,求指点。10. 关于layuiadmin中表格按钮提交问题求解!!!!
