Laravel Eloquent ORM 的本地作用域

Posted 小伍

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Laravel Eloquent ORM 的本地作用域相关的知识,希望对你有一定的参考价值。

定义:

class User extends Model
{
    public function scopePopular($query)
    {
        return $query->where(\'votes\', \'>\', 100);
    }

    public function scopeActive($query)
    {
        return $query->where(\'active\', 1);
    }
    
    public function scopeOfType($query, $type)
    {
        return $query->where(\'type\', $type);
    }
}

使用:

$users = App\\User::popular()->active()->ofType(\'admin\')->orderBy(\'created_at\')->get();

$users = App\\User::popular()->orWhere(function (Builder $query) {
    $query->active();
})->get();
# 或者
$users = App\\User::popular()->orWhere->active()->get();

以上是关于Laravel Eloquent ORM 的本地作用域的主要内容,如果未能解决你的问题,请参考以下文章

Laravel 插入嵌套的 Eloquent ORM 模型

Laravel之Eloquent ORM

Laravel Eloquent ORM 似乎很简单

Laravel Eloquent ORM--整理(未转)

Laravel Eloquent ORM 事务

Laravel Eloquent ORM 复制