2015-10-14 93 views
4

请帮助即时在laravel创建一个登录和注册页面时收到此错误5.1级“应用程序验证”未找到laravel

FatalErrorException in AuthController.php line 44: 
Class 'App\Validator' not found 

这里是我的AuthController.php

<?php 

namespace App\Http\Controllers\Auth; 

use App\User; 
use App\Validator; 
use App\Http\Controllers\Controller; 
use Illuminate\Foundation\Auth\ThrottlesLogins; 
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, ThrottlesLogins; 

    /** 
    * Create a new authentication controller instance. 
    * 
    * @return void 
    */ 
    public function __construct() 
    { 
     $this->middleware('guest', ['except' => 'getLogout']); 
    } 

    /** 
    * Get a validator for an incoming registration request. 
    * 
    * @param array $data 
    * @return \Illuminate\Contracts\Validation\Validator 
    */ 
    protected function validator(array $data) 
    { 
     return Validator::make($data, [ 
      'name' => 'required|max:255', 
      'email' => 'required|email|max:255|unique:users', 
      'password' => 'required|confirmed|min:6', 
     ]); 
    } 

    /** 
    * Create a new user instance after a valid registration. 
    * 
    * @param array $data 
    * @return User 
    */ 
    protected function create(array $data) 
    { 
     return User::create([ 
      'name' => $data['name'], 
      'email' => $data['email'], 
      'password' => bcrypt($data['password']), 
     ]); 
    } 
} 

和我注册视图

<!-- resources/views/auth/register.blade.php --> 

<form method="POST" action="/QADapps/auth/register"> 
    {!! csrf_field() !!} 

    <div> 
     Name 
     <input type="text" name="name" value="{{ old('name') }}"> 
    </div> 

    <div> 
     Email 
     <input type="email" name="email" value="{{ old('email') }}"> 
    </div> 

    <div> 
     Password 
     <input type="password" name="password"> 
    </div> 

    <div> 
     Confirm Password 
     <input type="password" name="password_confirmation"> 
    </div> 

    <div> 
     <button type="submit">Register</button> 
    </div> 
</form> 

所有代码都来自laravel文档。这就是为什么我不知道它为什么失败。请检查我的错误。谢谢

也这是我的路线控制器

// Authentication routes... 
Route::get('auth/login', 'Auth\[email protected]'); 
Route::post('auth/login', 'Auth\[email protected]'); 
Route::get('auth/logout', 'Auth\[email protected]'); 

// Registration routes... 
Route::get('auth/register', 'Auth\[email protected]'); 
Route::post('auth/register', 'Auth\[email protected]'); 

附:我的应用程序在 http://localhost:8080/QADapps/auth/register 的域下有什么问题吗? 我也动的index.php和的.htaccess从公众到根目录

+0

你有'Validator'或你'app'文件夹中的'User'类? –

+0

你好,确切位置在哪里? – Nixxx27

+0

'app/Validator.php'。如果这个文件不存在,你可以试试下面的@delatbabel答案。 –

回答

5

实际上,你需要或者这样:

use Validator; 

或本:

use Illuminate\Support\Facades\Validator; 

照亮\确认\验证是基础类包含功能,但使用您需要拉入门面类的静态方法。

外观类照亮的\ Support \外立面\验证化名为验证在配置/ app.php

+0

嗨,当我使用都没有发生,它只是重定向我注册页面。但没有保存到db – Nixxx27

+0

你应该检查你的User :: create()调用的结果,我看不到你的数据库结构,但可能有一个数据库错误那里。 – delatbabel

+0

我试过User :: create()并将一个数据保存到我的数据库中。 – Nixxx27

相关问题