使用逻辑或在seeInDatabase中

问题描述 投票:2回答:1

如何在Codeception的seeInDatabase方法中实现逻辑'或'运算符?

例如:方法语法是

seeInDatabase('table', array('column1' => 'value1', 'column2' => 'value2'));

Wich生成此查询

SELECT COUNT(*) FROM `table` WHERE `column1` = 'value1' AND `column2` = 'value2'

如何生成以下查询?

SELECT COUNT(*) FROM `table` WHERE `column1` = 'value1' AND (`column2` = 'value2' OR `column2` = 'value3')

谢谢你的帮助!

php laravel testing codeception
1个回答
0
投票

你可以尝试这个 -

$this->seeInDatabase('table', function($query)
{
    $query->where('column1', 'value1')->where('column2', 'value2')->orWhere('column2','value3');
});

或者您可以将其拆分为一些简单的步骤。首先得到记录 -

$model = Model::where('column1', 'value1')->where('column2','value2')->orWhere('column2','value3')->first();

然后测试 -

$this->assertNotNull($model);

为了更好地理解,你可以see这个。

© www.soinside.com 2019 - 2024. All rights reserved.