when ever i want to logout, it always show “Use of undefined constant login – assumed ‘login’” error. what did i do wrong?
web.php
route::get('/logout','AuthController@logout')->name('logout');
route::get('/','PagesController@home')->name('home');
AuthController.php
public function getLogin(){
return view('login');
}
public function postLogin(Request $request){
if(!Auth::attempt(['email' => $request->email, 'password' => $request->password])){
return redirect()->back();
}
return redirect()->route('home');
}
public function logout(){
Auth::logout();
return redirect()->route(login);
}
PagesController.php
public function home()
{
return view('index') ;
}
main.blade.php
<a href="{{route('logout')}}">logout</a>
3
Answers
Put
login
in qoutation:As per your code you need to use quote for it on the below line while using login, so if you do not provide quote it is assuming as constant.
And also there should be a route for it in your route file with the name login as per your question that route also do not exists yet
change To :