有没有办法在变量中捕获laravel错误消息

时间:2015-07-02 14:56:24

标签: php laravel-5

我在laravel 5中有一个表格,需要所有字段。如果用户未在该字段中输入任何内容,则会在该字段下显示错误消息。错误消息显示如下:

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

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

我想要的是在变量中捕获此消息,例如:

$mess=something;

..我需要这个......

如果我echo $mess,结果应为:名称字段是必需的。

你能帮帮我吗? 感谢。

1 个答案:

答案 0 :(得分:0)

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

如果是,则不要使用$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返回到您的视图。