是否有任何方法可以捕获变量中的laravel错误消息


is there any way to capture laravel error messages in a variable

我在laravel 5中有一个表单,所有字段都是必需的。如果用户没有在字段中输入任何内容,则会在该字段下显示一条错误消息。错误消息如下所示:

 {!!$errors->first('Name','<div class="has-error"><span></span>:message</div>')!!}

举个例子,如果用户在"名称"字段中没有输入任何内容,则消息将是:"名称字段是必需的。"

我想要的是在一个变量中捕获这个消息,比如:

$mess=something;

我需要这个东西。。。

如果我执行echo $mess,结果应该是名称字段是必需的。

你能帮我吗?谢谢

这听起来像是你想直接捕捉控制器中的错误,对吧?因为您在控制器中使用$this->validate(),因此会返回错误,您可以使用$errors变量访问is。到目前为止这是正确的吗?

如果是,则不要使用$this->validate(),而是使用

$v = Validator::make($request->all(), [
    'title' => 'required|unique|max:255',
    'body' => 'required',
]);
if ($v->fails()) {
    return view('viewname', ['mess' => $v->errors()]);
}

这使您可以将Validator实例保存在变量中,并手动执行检查。$v->errors()现在包含所有错误,您可以将其作为mess返回到您的视图中。