【问题标题】:Laravel 5.3 : Pages not loading properlyLaravel 5.3:页面未正确加载
【发布时间】:2017-01-28 11:29:07
【问题描述】:

当用户登录或注册时,他应该去仪表板,但不是它,而是位于 /login 页面,该页面甚至不存在,因此发生错误:

抱歉,找不到您要查找的页面。

1/1 RouteCollection.php 第 161 行中的 NotFoundHttpException:

路线:

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();          
 }       
}

钱包控制器

 public function getwallet(){
    return view('files.wallet');
}



public function addmoney(Request $request){

    $this->validate($request,[
        'amount'=>'required'
        ]);

    $amount = $request['amount'];

    $wallet = new Wallet();
    $wallet->amount=$amount;

    $wallet->save();
    
    return redirect()->route('/addmoney'); 
}

即使我尝试 localhost:8000/dashboard ,它也会加载为 localhost:8000/login ,显示相同的错误。此外,当我尝试加载 /addmoney 页面时,当用户提交金额并重定向时也会出现同样的问题到下一个 addmoney 页面。

【问题讨论】:

  • 在注册时,您只是将新用户插入数据库,但会话没有启动。
  • 当我直接使用 /dashboard 时,它甚至无法正常工作。但是,我怎样才能开始会话@P_95。
  • 也许通过获取插入用户的 id 并使用以下身份验证方法之一:Auth::loginUsingId($user-&gt;lastInsertId());
  • /dashboard 路由可能在 auth 中间件组下,您可能没有登录路由。类似于 Route::get('/preSignIn', 'UserController@preSignIn'); 的东西,它返回登录表单视图。
  • 是的,仪表板位于 Web 中间件下,所以我认为如果我将其移除它可能会起作用?还是我必须在用户控制器下创建另一个登录功能? @SanzeebAryal

标签: laravel


【解决方案1】:

我看到您的仪表板视图视图位于 file.controller 中,但您使用的是 auth 中间件。将仪表板视图放在 auth 文件夹中的仪表板视图中。

Laravel 中的默认值:resources/views/auth/yourviewhere

【讨论】:

  • 将仪表板视图放入resources/views/auth 并从文件夹中删除。还在控制器函数 getdashboard() 中更改了它的路径。但是,还是不行。现在该怎么办?
  • @Rock 这很奇怪。尝试 php artisan view:clear 和 php artisan route:clear。仪表板也是这里唯一的刀片吗?是你找不到的仪表板吗?还是你使用@extends('other.view')?
  • 不,我也有其他视图,但我找不到 /dashboard 和 /addmoney 这两个视图。每当我尝试加载这两个时,都会发生相同的错误。我想先解决一个问题。但是,是的,这个错误发生在两页上。此外,尝试了视图和路线清晰但仍然是同样的问题。
  • 我刚刚添加了控制器来加载 /addmoney 页面
猜你喜欢
  • 2020-01-26
  • 1970-01-01
  • 2021-09-23
  • 1970-01-01
  • 1970-01-01
  • 2016-12-28
  • 1970-01-01
  • 1970-01-01
  • 2019-11-14
相关资源
最近更新 更多