我是Laravel的新手,我正在使用Web应用程序的教程。教程使用Laravel 4,而我使用Laravel 5.我解决了问题,寄存器,但是当我放下来测试登录以下显示了错误:如何在laravel 5中验证凭据以登录功能?
ErrorException在EloquentUserProvider.php线111:传递照亮\验证参数1 \ EloquentUserProvider :: validateCredentials()必须是在C:\ Users \ Pujan \ Desktop \ projectlaravel \ vendor \ laravel \ framework \ src \ Illuminate \中调用的App \ user的实例Illuminate \ Contracts \ Auth \ Authenticatable,行390上的Auth \ Guard.php并定义。
我不能在这里找出问题。实际上意味着凭证。我知道Laravel 5具有内置登录功能,但无法使用它,所以我尝试了不同的方式,但这个问题超出了我的焦点。 我UserController的是:
<?php
namespace App\Http\Controllers;
use Illuminate\Http\Request;
use App\Http\Requests;
use App\Http\Controllers\Controller;
use View;
use App\user;
use Input;
use App\Http\Requests\YourFormRequest;
use Auth;
//use Illuminate\Support\Facades\Auth;
class UserController extends Controller
{
public $restful = true;
public function index()
{
return View::make('users.new')->with('title', 'Make it snappy Q&A - Register');
}
public function create(YourFormRequest $request)
{
User::create($request->all());
return redirect('/')->with('message','Thanks for registering!');
}
public function getlogin()
{
// return \Auth::user();
return View::make('users.login')->with('title','Make it snappy Q&A - Login ');
}
public function createlogin()
{
$user = array(
'username'=>Input::get('username'),
'password'=>Input::get('password')
);
if (Auth::attempt($user))
{
return redirect('/')->with('message','You are logged in:');
}else{
return redirect('login')
->with('message','Your username or password are incorrect pls chk it out')
->with_input();
}
}
我有我的路线:
Route::get('/','[email protected]');
Route::get('register','[email protected]');
Route::get('login','[email protected]');
Route::post('register','[email protected]');
Route::post('login','[email protected]');
我的登录布局工作正常,但是当我尝试登录上面的错误出现。我认为这个错误属于内置的Laravel 5功能,但我无法匹配内置和我创建的登录功能。
您使用的是Laravel 5.0还是5.1?在5.0中,身份验证(登录系统)已经设置,在5.1中您可以按照[官方文档](http://laravel.com/docs/5.1/authentication)设置身份验证系统 – Vikas
您的控制器的第12行应该是'使用App \ User;',不使用App \ user;' – Vikas