为什么 Laravel 的 required_without_all 验证无法识别我的参数?

Ado*_*cad 6 validation laravel laravel-5.4

我想验证仅当其他两个输入为空时才需要输入。所以我为此使用required_without_all验证规则。

根据 Laravel 5.4 文档,“ Required Without All ”:

仅当所有其他指定字段都不存在时,验证字段必须存在且不为空。

但是我认为我不知道Laravel 中的Present意味着什么,因为我认为这意味着必须填写输入。

当我运行测试并将用户名留空时,无论名字和姓氏输入是填充还是空,它总是返回以下错误:

当名字/姓氏都不存在时,用户名字段是必需的。

这是我对控制器的验证:

public function test()
{
    $this->validate(request(), [
        'username' => 'required_without_all: firstname, lastname',
    ]);

    return redirect('/');
}
Run Code Online (Sandbox Code Playgroud)

Ado*_*cad 7

代码有问题。名字和姓氏参数上不应有任何空格。代码应该是:

'username' => 'required_without_all:firstname,lastname',
Run Code Online (Sandbox Code Playgroud)

代替:

'username' => 'required_without_all: firstname, lastname',
Run Code Online (Sandbox Code Playgroud)

所以 required_without_all 现在工作正常。抱歉,大家,我更新了问题,使其符合实际问题。