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. javascript - 在靜態頁面上用load 引入的頁面文件問題?2. java后臺導出頁面到pdf3. javascript - webpack打包后的bundlejs文件代碼不知道什么意思.4. Java游戲服務器開發和網站、app服務端的開發都差不多的嗎???實現的思路和方法5. android - RxJavar用什么操作符可以使數據每隔一段時間取出一個6. html - 哪些情況下float會失效?7. css - 關于ul的布局8. css - 如何使用 vue transition 實現 ios 按鈕一樣的平滑切換效果9. java - oracle對漢字字段按照拼音排序的函數和sql語句是什么?10. javascript - vue組件通過eventBus通信時,報錯a.$on is not a function
