對(duì)于關(guān)系模型來說,有時(shí)候我們需要甄別關(guān)聯(lián)后結(jié)果,例如,班級(jí)和學(xué)生是一對(duì)多關(guān)聯(lián),我現(xiàn)在查詢班級(jí),但是想只顯示正常狀態(tài),即狀態(tài)為1的學(xué)生,因?yàn)橛械膶W(xué)生從這個(gè)班級(jí)里面刪除了,狀態(tài)是4,那么我們?cè)诓樵兊臅r(shí)候就可以使用如下語(yǔ)法:
1、定義關(guān)聯(lián)關(guān)系:
Class模型:
public function learners() {
return $this->belongsToMany('App\Models\Customer', 'learner_relation', 'class_id', 'learner_id');
}
Customer模型:
public function learnerclasses() {
return $this->belongsToMany('App\Models\MyClass', 'learner_relation', 'learner_id', 'class_id');
}
2、查詢代碼:
$data = MyClass::with([
'learners' => function ($query) {
$query->select()
->where('learner_relation.status', 1)
->orderBy('learner_relation.create_time', 'desc');
},
])
->find($id);
然后得到的結(jié)果就是我們想要的正常的學(xué)生。
以上這篇Laravel關(guān)系模型指定條件查詢方法就是小編分享給大家的全部?jī)?nèi)容了,希望能給大家一個(gè)參考,也希望大家多多支持腳本之家。
您可能感興趣的文章:- Laravel5.1 框架模型查詢作用域定義與用法實(shí)例分析
- Laravel5.1 框架模型工廠ModelFactory用法實(shí)例分析
- Laravel5.1 框架模型軟刪除操作實(shí)例分析
- Laravel5.1 框架模型創(chuàng)建與使用方法實(shí)例分析
- Laravel 5框架學(xué)習(xí)之模型、控制器、視圖基礎(chǔ)流程
- Laravel模型間關(guān)系設(shè)置分表的方法示例
- Laravel 實(shí)現(xiàn)關(guān)系模型取出需要的字段
- 詳解Laravel設(shè)置多態(tài)關(guān)系模型別名的方式
- Laravel模型事件的實(shí)現(xiàn)原理詳解
- Laravel框架模型的創(chuàng)建及模型對(duì)數(shù)據(jù)操作示例
- Laravel使用模型實(shí)現(xiàn)like模糊查詢的例子
- Laravel5.1 框架模型一對(duì)一關(guān)系實(shí)現(xiàn)與使用方法實(shí)例分析