我正在尝试使用Laravel 4中的控制器,我遇到了一些麻烦。这是基本的运行:
我在控制器文件夹中有一个名为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'));
当我访问网址时:public / fans / landing
我收到“NotFoundHttpException”;
你有什么想法可能会出错吗?谢谢你的帮助。
答案 0 :(得分:4)
首先,您需要指定正在运行的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 -o
或php composer.phar dump-autoload -o
(如果你的作曲家在本地安装)
然而,在laravel 3中
// routes.php
Route::get('/', array('uses' => 'GuestController@index'));
// GuestController.php
class GuestController extends BaseController {
public $restful = true;
public function get_index() {
return 'Hello world.';
}
}
答案 1 :(得分:0)
您可能需要将方法名称更改为索引:
class FansController extends BaseController {
public $restful = true
public function index() {
return View::make('fans.landing');
}
}