RouteCollection.php 第 161 行中的 NotFoundHttpException:在 laravel 5 中

NotFoundHttpException in RouteCollection.php line 161: in laravel 5

我知道这是关于堆栈溢出的一个非常常见的问题,我尝试了其中的几个,但它在我的场景中不起作用。

我的 CollectionController 看起来像这样。

<?php

namespace App\Http\Controllers;

use Illuminate\Http\Request;
use Illuminate\Support\Facades\Auth;
use App\Http\Requests;
use App\Http\Controllers\Controller;
use App\Http\Middleware\Role;
use Illuminate\Support\Facades\Input;
use App\User;
use App\Invoice;
use Session;
use Validator;


    class CollectionController extends Controller
    {
        /**
         * Display a listing of the resource.
         *
         * @return Response
         */

      public function __construct(){

        $this->middleware('role:collector'); // replace 'collector' with whatever role you need.
    }


      public function getHome(){

          $empid= Auth::user()->empid;
          $invoice = Invoice::where('Status','=',1)->orderBy('Id', 'desc')->get();


        return View('collectionmodule/home')->with(array('invoices'=>$invoice));

     }

       public function getPayment(){

    dd('sssss');
             $id =$invoiceid;
             $invoice = Invoice::where('Id','=',$id)->payments()->comments()->get();

             return View('collectionmodule/payment')->with(array('invoice'=>$id));

     }




        }

我的路线Class如下

Route::controller('collection/home','CollectionController');
Route::controller('collection/payment','CollectionController');

我收到以下错误

NotFoundHttpException in RouteCollection.php line 161:

None 的路线是有效的任何人都可以帮助我

我试过

http://localhost:8000/collection/home/

and 

http://localhost:8000/collection/payment

谢谢

嗯,很简单

在隐式调用中

我应该只定义一次路线

Route::controller('collection','CollectionController');

所以现在在url collection/home如果被解析然后laravel会自动调用 getHome() 函数

您只需定义一次路线:

Route::controller('collection','CollectionController');

然后你就可以转到你在控制器的函数名中声明的路由了。

示例:

获取首页。路线将是 collection/home

获得付款。路线将是 collection/payments

我在 laravel 5.4.10 中收到完全相同的异常消息,在浪费了大约 2 小时后,我发现 routes.php 已在 5.3 及更高版本中删除,仅创建文件是不够的。我们需要在 "map" 函数中包含 RouteServiceProvider.php 文件中的文件。 在 map 函数中添加以下行解决了我的问题:

require app_path('Http/routes.php');

这是最常见的例外情况。

NotFoundHttpException in RouteCollection.php

而且很容易理解。如果您拼错了路线名称,就可以欺骗它。 它可能是 aricles 而不是 articles 之类的东西。

尝试

php artisan route:list

并检查所有路由名称是否正确。

检查路线名称,

不管是大是小。

示例-> 如果文件夹名称是测试,视图名称是联系人。

如果你写 -> localhost/testing/contact,那么这是一个错误,因为文件夹名称即测试,你写了小 t,即测试。

所以你必须写 -> localhost/Testing/contact.

错误已解决。