2

L3からL4に移行中です。デフォルトのL4インストールに付属しているコントローラーを登録するときHomeControllerに、ページに移動しようとすると例外が発生www.domain.com/homeします。ResourceNotFound私はしましたcomposer dumpautoloadが、それは役に立ちませんでした。

追加の手順を逃しましたか?

ルート.php

Route::controller('home', 'HomeController');

controllers / HomeController.php

<?php

class HomeController extends BaseController {

    public function showWelcome()
    {
        return View::make('hello');
    }

}

エラースタックトレース

NotFoundHttpException:
in /var/www/l4/vendor/laravel/framework/src/Illuminate/Routing/Router.php line 1338
at Router->handleRoutingException(object(ResourceNotFoundException)) in /var/www/l4/vendor/laravel/framework/src/Illuminate/Routing/Router.php line 992
at Router->findRoute(object(Request)) in /var/www/l4/vendor/laravel/framework/src/Illuminate/Routing/Router.php line 956
at Router->dispatch(object(Request)) in /var/www/l4/vendor/laravel/framework/src/Illuminate/Foundation/Application.php line 463
at Application->dispatch(object(Request)) in /var/www/l4/vendor/laravel/framework/src/Illuminate/Foundation/Application.php line 448
at Application->run() in /var/www/l4/public/index.php line 51
4

2 に答える 2

4

ドキュメントによると:

次に、コントローラーにメソッドを追加し、応答するHTTP動詞をプレフィックスとして付けます。

それで:

class UserController extends BaseController {

    public function getIndex() 
    {
        // Would response to /user and /user/index
    }
}

したがって、あなたの場合は、単に名前を変更showWelcome()するだけgetWelcome()で十分です。

于 2013-03-23T15:48:28.687 に答える
1

ルートを次のように変更してみてください。

Route::resource('home', 'HomeController');

更新:私の悪い、私はあなたがここで説明されているように、機知に富んだコントローラーが欲しいと思った:http: //four.laravel.com/docs/controllers#resource-controllers

「通常の」RESTfulコントローラーの場合、jucoの答えは正しいようです。

基本的なコントローラーが必要な場合は、これを使用してコントローラーの方法に対応できます。

Route::get('home', 'HomeController@showWelcome');
于 2013-03-23T15:49:49.173 に答える