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. java - yuicompressor-maven-plugin 合并可用却不压缩, 哪配置不对?2. Android-studio导入.so库问题?3. mysql - 我用SQL语句 更新 行的时候,发现全部 中文都被清空了,请问怎么解决?4. logging - Python日志, 时间应该使用UTC时间还是本地时间?5. python - 两千万条结构化数据怎么进行数据分析6. java - mybatis怎么实现在数据库中有就修改,没有就添加7. javascript - 修改表单多选项时和后台同事配合的问题。8. java - 针对MongoDB当前哪个第三方ORM框架更稳定成熟?9. transform - CSS3的3D变换多次变换如何保持坐标轴不动,或者有矩阵算法可以实现否10. javascript - npm run build后调用api返回index.html
