Laravel 5.3:页面加载不正确
当用户登录或注册时,他应该进入仪表板,但不是仪表板,而是位于/login页面,该页面甚至不在那里,因此出现错误occours: 很抱歉,找不到您要查找的页面 1/1 RouteCollection.php第161行中的NotFoundHttpException: 路线:Laravel 5.3:页面加载不正确,laravel,Laravel,当用户登录或注册时,他应该进入仪表板,但不是仪表板,而是位于/login页面,该页面甚至不在那里,因此出现错误occours: 很抱歉,找不到您要查找的页面 1/1 RouteCollection.php第161行中的NotFoundHttpException: 路线: Route::get('/', function () { return view('welcome'); })->name('home'); Route::group(['middleware' => ['web
Route::get('/', function () {
return view('welcome');
})->name('home');
Route::group(['middleware' => ['web']], function(){
Route::get('upload',function(){
return view('files.upload');
});
Route::get('/wallet',[
'uses' => 'WalletController@getwallet',
'as' => 'wallet'
]);
Route::post('/addmoney',[
'uses' => 'WalletController@addmoney',
'as' => 'addmoney'
]);
Route::post('/signup',[
'uses' => 'UserController@postSignUp',
'as' => 'signup'
]);
Route::post('/signin',[
'uses' => 'UserController@postSignIn',
'as' => 'signin'
]);
Route::get('/dashboard',[
'uses' => 'UserController@getDashboard',
'as' => 'dashboard',
'middleware' => 'auth'
]);
Route::post('/handleUpload','FilesController@handleUpload');
Route::get('/pay', ['as' => 'pay', 'uses' => 'PaymentController@pay']);
# You will need one more.
Route::get('/payment/status', ['as' => 'payment_status', 'uses' => 'PaymentController@status']);
/**
* Using Named Routs to demonstrate all the possibilities.
*/
});
<?php
namespace App\Http\Controllers;
use Illuminate\Support\Facades\Input;
use InvalidConfirmationCodeException;
use Flash;
use App\User;
use Illuminate\Http\Request;
use Illuminate\Support\Facades\Auth;
use Illuminate\Support\Facades\Mail;
use Illuminate\Foundation\Auth\AuthenticatesAndRegistersUsers;
class UserController extends Controller
{
public function getDashboard(){
return view('files.dashboard');
}
public function postSignUp(Request $request)
{
$this -> validate($request,[
'email' => 'required|email|unique:users',
'name' => 'required|max:20',
'password' => 'required|min:4'
]);
$email = $request['email'];
$name = $request['name'];
$password = bcrypt($request['password']);
$user = new User();
$user->email =$email;
$user->name = $name;
$user->password = $password;
$user->save();
return redirect()->route('dashboard');
//Auth::login($user);
}
public function postSignIn(Request $request)
{
$this -> validate($request,[
'email' => 'required',
'password' => 'required'
]);
if (Auth::attempt(['email' => $request['email'], 'password' => $request['password']])) {
return redirect()->route('dashboard');
}
return redirect()->back();
}
}
用户控制器:
Route::get('/', function () {
return view('welcome');
})->name('home');
Route::group(['middleware' => ['web']], function(){
Route::get('upload',function(){
return view('files.upload');
});
Route::get('/wallet',[
'uses' => 'WalletController@getwallet',
'as' => 'wallet'
]);
Route::post('/addmoney',[
'uses' => 'WalletController@addmoney',
'as' => 'addmoney'
]);
Route::post('/signup',[
'uses' => 'UserController@postSignUp',
'as' => 'signup'
]);
Route::post('/signin',[
'uses' => 'UserController@postSignIn',
'as' => 'signin'
]);
Route::get('/dashboard',[
'uses' => 'UserController@getDashboard',
'as' => 'dashboard',
'middleware' => 'auth'
]);
Route::post('/handleUpload','FilesController@handleUpload');
Route::get('/pay', ['as' => 'pay', 'uses' => 'PaymentController@pay']);
# You will need one more.
Route::get('/payment/status', ['as' => 'payment_status', 'uses' => 'PaymentController@status']);
/**
* Using Named Routs to demonstrate all the possibilities.
*/
});
<?php
namespace App\Http\Controllers;
use Illuminate\Support\Facades\Input;
use InvalidConfirmationCodeException;
use Flash;
use App\User;
use Illuminate\Http\Request;
use Illuminate\Support\Facades\Auth;
use Illuminate\Support\Facades\Mail;
use Illuminate\Foundation\Auth\AuthenticatesAndRegistersUsers;
class UserController extends Controller
{
public function getDashboard(){
return view('files.dashboard');
}
public function postSignUp(Request $request)
{
$this -> validate($request,[
'email' => 'required|email|unique:users',
'name' => 'required|max:20',
'password' => 'required|min:4'
]);
$email = $request['email'];
$name = $request['name'];
$password = bcrypt($request['password']);
$user = new User();
$user->email =$email;
$user->name = $name;
$user->password = $password;
$user->save();
return redirect()->route('dashboard');
//Auth::login($user);
}
public function postSignIn(Request $request)
{
$this -> validate($request,[
'email' => 'required',
'password' => 'required'
]);
if (Auth::attempt(['email' => $request['email'], 'password' => $request['password']])) {
return redirect()->route('dashboard');
}
return redirect()->back();
}
}
即使我尝试使用localhost:8000/dashboard,它也会作为localhost:8000/login加载,显示相同的错误。此外,当我尝试加载/addmoney页面时,当用户提交金额并重定向到下一个addmoney页面时,也会出现相同的问题。我看到您的dashboard视图位于file.controller中,但您使用的是auth中间件。将仪表板视图放在auth文件夹的仪表板视图中
Laravel中的默认设置:
resources/views/auth/yourview here
在注册时,您仅将新用户插入数据库,但会话未启动。当我直接使用/dashboard时,它甚至无法正常工作。但是,我如何启动会话@P_95。可能需要获取插入用户的id并使用其中一个Auth方法:Auth::loginUsingId($user->lastinertid())代码>/dashboard
路由可能位于auth中间件组下,并且您可能没有用于登录的路由。类似于Route::get('/preSignIn','UserController@preSignIn');代码>返回登录表单视图。是的,仪表板在web中间件下,因此我认为如果我将其从中删除,它可能会工作吗?或者我必须在用户控制器下为登录创建另一个功能吗@Sanzeebaryal在resources/views/auth中弹出仪表板视图,并将其从files文件夹中删除。还更改了控制器函数getdashboard()中的路径。但是,它仍然不起作用。现在该怎么办?@Rock,真奇怪。尝试php artisan view:clear和php artisan route:clear。仪表板也是这里唯一的刀片吗?是你找不到的那个吗?或者您使用@extends('other.view')?不,我也有其他视图,但找不到两个视图,/dashboard和/addmoney。每当我尝试加载这两个时,都会发生相同的错误。我想先解决一个问题。但是是的,这个错误发生在两个页面上。此外,尝试查看和路由清除,但仍然存在相同的问题。我刚刚将控制器添加到加载/添加金钱页面