NotFoundHttpException for Controller route in Laravel 4



我正试图开始使用Laravel 4中的控制器,我遇到了一些麻烦。下面是基本的概要:

在controllers文件夹中有一个名为FansController的控制器在FansController。php文件中:

<php
class FansController extends BaseController {
        public $restful = true
        public function getindex() {
        return View::make('fans.landing');
    }
}

在我的views文件夹中,我有一个名为"fans"的文件夹,它控制着一个视图文件"landing.blade.php"。它包含简单的html: <h1>hello</h1>

在我的routes.php文件中,我有一个调用控制器的路由。下面是代码:

Route::get('landing', array('uses' => 'FansController@index'));

当我访问url: public/fans/landing

我收到一个"NotFoundHttpException";

你知道哪里出了问题吗?谢谢你的帮助。

首先你需要指定你运行的是哪个版本的Laravel

如果你正在运行Laravel 4,那么:

// routes.php
Route::get('/', array('uses' => 'GuestController@getIndex'));
// GuestController.php
class GuestController extends BaseController {
    public function getIndex() {
         return 'Hello world.';
    }
}

然后在CLI

上运行$ composer dump-autoload -ophp composer.phar dump-autoload -o(如果您的编写器是在本地安装的)

// routes.php
Route::get('/', array('uses' => 'GuestController@index'));
// GuestController.php
class GuestController extends BaseController {
    public $restful = true;
    public function get_index() {
         return 'Hello world.';
    }
}

您可能需要将方法名称更改为index:

class FansController extends BaseController {
    public $restful = true
    public function index() {
        return View::make('fans.landing');
    }
}

最新更新