未定义的属性:在Laravel中的App \ Http \ Controllers \ PageController :: $ validate

时间:2017-06-07 17:53:19

标签: laravel laravel-5

我有控制器的动作

public function postContact(Request $request)
{

    $this->validate($request, [
        'name'    => 'required',
        'email'   => 'required | email',
        'content' => 'required'
    ]);
    if(empty($this->validate->fails())){
        die('wrong');
         return redirect()->route('contact')->withInput();
   }
   return ('right');

}

当我没有填写所有输入时,这会在错误的语句中消失,但当我填写所有输入时会发生此错误:

  

PageController.php第123行中的ErrorException:   未定义的属性:App\Http\Controllers\PageController::$validate

我该如何解决这个问题? 感谢您阅读我的回答: Image

1 个答案:

答案 0 :(得分:0)

应该是:

if (empty($this->validate()->fails())) {

因为validate()是方法,而不是属性。

https://laravel.com/docs/5.4/validation#quick-writing-the-validation-logic