2016-09-23 122 views
5

如何解決此問題?我alreay試圖從網絡中使用所有的解決方案,我也嘗試使用Illuminate \ Foundation \ Auth \ AuthenticatesAndRegistersUsers,但他們都沒有工作?如果有人知道如何解決這個問題,請幫助我。我想擺脫這個錯誤。在此先感謝在Laravel 5.3中未找到特徵'Illuminate Foundation Auth AuthenticatesAndRegistersUsers'

<?php 

namespace App\Http\Controllers\Auth; 
use Illuminate\Foundation\Auth\AuthenticatesAndRegistersUsers; 
use Illuminate\Support\Facades\Validator; 
use Illuminate\Support\Facades\Input; 
use Illuminate\Support\Facades\Redirect; 

use Illuminate\Routing\Controller as BaseController; 
use Theme; 
use Auth; 
use App\Login; 
use Illuminate\Foundation\Auth\ThrottlesLogins; 
use App\Http\Controllers\Auth\RegisterController; 
class LoginController extends BaseController 
{ 

/* 
|-------------------------------------------------------------------------- 
| Login Controller 
|-------------------------------------------------------------------------- 
| 
| This controller handles authenticating users for the application and 
| redirecting them to your home screen. The controller uses a trait 
| to conveniently provide its functionality to your applications. 
| 
*/ 

use AuthenticatesAndRegistersUsers, ThrottlesLogins; 

/** 
* Where to redirect users after login/registration. 
* 
* @var string 
*/ 
protected $redirectTo = '/'; 


/** 
* Create a new controller instance. 
* 
* @return void 
*/ 

public function __construct() 
{ 
    $this->middleware('guest', ['except' => 'logout']); 
} 


public function signin(){ 

    if(Auth::check()){ 

     return Redirect::to('/'); 

    }else{ 
     $theme = Theme::uses('default')->layout('default'); 
     return $theme->of('login.sign-in')->render(); 
    } 

} 



public function login(){ 


    $data = array(
     'email' => Input::get('email'), 
     'password' => Input::get('password') 
    ); 

    $validator= RegisterController::validator($data); 

    if($validator){ 
     return Redirect::to('/login')->withErrors([$validator->errors()->all() ]); 
    }else{ 
     return Redirect::to('/'); 
    } 
} 




     // RegisterController::create($data); 

     // Login::Insert($data); 
     // $checkuser = Login::Login($data); 





function logout(){ 
    Auth::logout(); 
    return Redirect::to('login'); 
} 

} 

回答

8

我認爲Laravel 5.3軟件包沒有這種特性。請檢查here

編輯:

你需要做出怎樣的新用戶進行驗證,並因爲AuthenticatesAndRegistersUsers造就了一些變化不復存在到laravel 5.3

所以,你需要做出改變:

無需將Guard和Registrar實例傳遞給基礎構造函數。完全從控制器的構造函數中刪除這些依賴項。

無需使用Laravel 5.0中使用的App \ Services \ Registrar類,只需將您的驗證器複製並粘貼到您的AuthController中即可。

確保在AuthController的頂部導入Validator facade和User模型。

+0

是的,我認爲這是原因 – Paul

+0

@Paul:嗯看到可能編輯解決方案的幫助。 –

+0

謝謝先生:D – Paul

相關問題