在 Laravel 5.1 中的非对象上调用成员函数 failed()


Call to a member function fails() on a non-object in Laravel 5.1

FatalErrorException in RegistersUsers.php 第 32 行:在非对象上调用成员函数 failed() 在 Laravel 5 中

请帮助解决这个问题,我很感激谁能解决这个错误。RegistersUsers.php中的代码是

<?php
namespace Illuminate'Foundation'Auth;
use Illuminate'Http'Request;
use Illuminate'Support'Facades'Auth;
trait RegistersUsers
{
use RedirectsUsers;
/**
 * Show the application registration form.
 *
 * @return 'Illuminate'Http'Response
 */
public function getRegister()
{
    return view('auth.register');
}
/**
 * Handle a registration request for the application.
 *
 * @param  'Illuminate'Http'Request  $request
 * @return 'Illuminate'Http'Response
 */
public function postRegister(Request $request)
{
    $validator = $this->validator($request->all());
    if ($validator->fails()) {
        $this->throwValidationException(
            $request, $validator
        );
    }
    Auth::login($this->create($request->all()));
    return redirect($this->redirectPath());
}
}
控制器

代码,控制器名称为身份验证控制器.php

 <?php namespace App'Http'Controllers'Auth;
 use App'Http'Controllers'Controller;
 use Illuminate'Foundation'Auth'AuthenticatesAndRegistersUsers;
 class AuthController extends Controller {
/*
|--------------------------------------------------------------------------
| Registration & Login Controller
|--------------------------------------------------------------------------
|
| This controller handles the registration of new users, as well as the
| authentication of existing users. By default, this controller uses
| a simple trait to add these behaviors. Why don't you explore it?
|
*/
use AuthenticatesAndRegistersUsers;
 public function validator(array $data){}
/**
 * Create a new user instance after a valid registration.
 *
 * @param  array  $data
 * @return 'Illuminate'Contracts'Auth'Authenticatable
 */
public function create(array $data){}
 }

在终端中使用此命令创建请求

php artisan make:request Name_of_request

请求文件中,在 rules() 方法下创建规则。例如

public function rules()
{        
          return [
                'title' =>  'required|min:3',
                'body'  =>  'required',
                'tag_list'  =>  'required',
                'image' => 'required|mimes:jpeg,jpg,png,gif'
            ];
 }

创建规则后,在控制器上添加类,如下所示。

public function store(ArticleRequest $request){
   //Your codes
}

ArticleRequest 是请求类,$request是 post 对象。

在您的身份验证控制器中需要包含"使用验证器";

此外,验证和创建方法为空。这些方法应如下所示:

public function validator(array $data)
{
         return Validator::make($data, [
           'name'       => 'required|max:255',
           'email'      => 'required|email|max:255|unique:users',
           'password'   => 'required|confirmed|min:8',
       ]);
}
public function create(array $data)
{
        return User::create([
           'name' => $data['name'],
           'email' => $data['email'],
           'password' => bcrypt($data['password']),
       ]);
}