Laravel中模型中可以定義scope開頭方法,這類方法可以模型直接使用。這類方法也稱作查詢作用域
例子:
現有Post模型,內部定義一個scopeTitle()方法
public function scopeTitle($query, $title="") {
return $query->where('title', $title);
}
第一個參數不可省略。 第二個可以調用時傳入。
在控制器中使用該方法
$posts = Post::where('id', '<', 3)->title('test 2')->orderBy('id', 'desc')->get();