eloquent query scope

Defining A Query Scope


class User extends Eloquent {

    public function scopePopular($query)
    {
        return $query->where('votes', '>', 100);
    }

    public function scopeWomen($query, $gender)
    {
        return $query->whereGender($gender);
    }

}

Utilizing A Query Scope

$users = User::popular()->women($gender)->orderBy('created_at')->get();