Laravel仅加载模型

时间:2016-10-26 17:16:40

标签: laravel model eloquent

我想加载模型以便以后添加wheres等。

$query = Users;

if($request->filter == 1) {
   $query = $query->where('user_access', 'admin');
}

if($request->otherFilter == 1) {
   $query = $query->where('user_email', '');
)

$query->get();

虽然使用$ query = Users;不工作..?

3 个答案:

答案 0 :(得分:1)

您可以使用以下命令创建Users模型的实例:

$query = new Users;

然后使用它。

答案 1 :(得分:1)

您可以通过创建Illuminate\Database\Eloquent\Builder实例来使用它:

$query = Users::query();

然后您可以在查询构建器实例中添加更多查询。

答案 2 :(得分:0)

如果您计划进行大量不同的查询,那么您应该考虑将本地查询范围与Eloquent一起使用。 grammars

    //App\User.php

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

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

您可以创建自定义查询,而不是冗长详细的查询。