或者在模型上查询

时间:2016-08-30 11:01:46

标签: laravel laravel-5.2

我想弄清楚为什么会发生什么事。

创建模型时,会给出一个状态参数。最初状态为等待信息,但很快就会更改为等待接受。我只是在他们的状态已经过了这两个阶段时才试图在我的页面上显示模型。目前我有以下

$projects = Project::with('client')->where('status', '!=', 'Awaiting Information')->orWhere('status', '!=', 'Awaiting Acceptance')->get();

但出于某种原因,这将返回状态为Awaiting Information的项目。如果我删除orWhere部分,则不会按预期显示任何项目。似乎orWhere抛出了查询。我希望返回所有没有这些状态的项目。

我的条款中是否遗漏了一些内容?

由于

1 个答案:

答案 0 :(得分:1)

我建议您使用whereNotIn方法进行查询:

$projects = Project::with('client')->whereNotIn('status', ['Awaiting Information', 'Awaiting Acceptance'])->get();