Laravel 5.2 验证请求 "not-in" 未返回自定义消息

Laravel 5.2 Validation Request "not-in" not returning custom message

我正在 Laravel 5.2 中设置请求 class 来处理表单。我在表单中有一个 select 菜单。 select 菜单中的第一个元素类似于以下内容:

<select name="unique-id">
    <option value="none">Select one...</option>
    <option value="real">Real</option>
</select>

默认情况下,select 菜单处于 "none" - 使用此选项提交表单 selected 应该会导致错误;所以,我有以下内容:

class SomeRequest extends Request
{
    ...

    public function rules()
    {
        return [
            'unique-id' => 'not-in:none', // error is caught
            'required-field' => 'required' // error is caught
        ];
    }

    ...
}

"not-in" 规则被请求处理程序捕获并且 returns 一个错误;但是,默认错误消息显示 "The selected unique-id is invalid" - 显然不是最人性化的错误消息。所以,我创建了以下内容:

class SomeRequest extends Request
{
    ...

    public function messages()
    {
        return [
            'unique-id.not-in' => 'Must select a valid XXXX.', // does not return
            'required-field.required' => 'Verifying custom errors.' // returns
        ];
    }

    ...
}

我尝试了一些变体,但不想让任何人的答案蒙上阴影。所以,以上是目前失败的原因。

应该是"not_in"而不是"not-in"。 Laravel Not In