2015-10-14 134 views
1

我从Github克隆了这个todstoychev/Laravel5Starter并安装它。ReflectionException类App Http Controllers StaticPagesController @ faq不存在Laravel-5

创建此StaticPagesController控制器并更新我的routes.php文件后。控制器似乎没有工作。出于某种原因,我不断收到以下错误。

ReflectionException in ControllerInspector.php line 32: 
Class App\Http\Controllers\[email protected] does not exist 

我routes.php文件文件

<?php 

// Admin routes 
Route::group(['prefix' => 'admin', 'namespace' => 'Admin'], function() { 
    Route::controller('permissions', 'AdminPermissionsController'); 

    Route::controller('settings', 'AdminSettingsController'); 

    Route::controller('roles', 'AdminRolesController'); 

    Route::controller('users', 'AdminUsersController'); 

    Route::controller('/', 'AdminController'); 
}); 

// Public and user routes 
Route::controller('contacts', 'ContactsController'); 

Route::controller('users', 'UsersController'); 

Route::controller('/', 'IndexController'); 

Route::controller('faq', '[email protected]'); 

我StaticPagesController.php文件

<?php 

namespace App\Http\Controllers; 

use Illuminate\Http\Request; 
use App\Http\Requests; 
use App\Http\Controllers\Controller; 

class StaticPagesController extends Controller 
{ 
    public function faq(){ 
     return 'this is faq page'; 
    } 
} 

我已经试过composer updatephp artisan acl:updatecomposer dumpautoload无济于事。

请帮帮我。由于

回答

0

这一行:

Route::controller('faq', '[email protected]'); 

你告诉Laravel对于faq控制器shoule是[email protected]Route::controller方法为路由设置了一个完整的控制器,但它并未指定要在该路由上使用的方法,Laravel在内部处理它。看看你的错误来证明我的观点:

Class App\Http\Controllers\[email protected] does not exist 

它正在寻找[email protected]类不StaticPagesController因为你正打算。

除非你使用REST构建一个API,你不应该使用controller方法,而是显式指定的路线,即

Route::get('faq', '[email protected]'); 

这将使用faq方法控制器上,当用户发出GET请求到URI faq。如果你坚持使用controller的方法,然后从第二个参数中删除@faq,你会很好,虽然我很确定Laravel预计方法索引,显示,创建等要在您的控制器。我建议看看Laravel 5 Fundamentals视频课程,以帮助您更好地理解。

相关问题