Laravel验证在空间上“存在”失败

时间:2018-06-24 15:35:02

标签: php laravel-5

我正在使用Laravel 5.6按名称验证输入。我正在使用exist规则来确定名称与输入匹配,并且basic等于1,如下所示:

public function rules()
{
    $this->sanitizeSpecials($this->all());

    return [
        'special1' => ['string', 'nullable', 'exists:specials,name,basic,1'],
    ];
}

在进行验证之前,我先通过一个消毒程序运行该名称,然后将其转换为将名称存储在数据库中的大小写格式。

public function sanitizeSpecials($input)
{
    if ($input['special1']) {
        $input['special1'] = ucwords(str_replace("_", " ", $input['special1']));
    }

    $this->replace($input);
}

卫生功能正确(例如:top_fade变为Top Fade),并且名称中没有空格的特殊商品可以正确验证,但是只要名称中有空格的特殊商品(如示例{ {1}},即使我可以验证输入值是否与数据库中的值匹配,验证仍会失败。为什么会这样失败?

0 个答案:

没有答案