Laravel 4 URL::操作错误


Laravel 4 URL::action error

我的控制器目录中有一个名为CharactersController.php的控制器。这里有两个功能:

    public function search()
{
    return View::make('search.search');
}
public function post_search()
{
    $name = Input::get('character');
    $searchResult = Player::where('name', 'LIKE', '%'.$name.'%')->paginate(5);
    return View::make('search.post_search')
            ->with('name', $name)
            ->with('searchResult', $searchResult);
}

在第一个函数(function search())中,我返回一个视图。这是视图的代码(只是表单):

        <form id="custom-search-form" class="form-search form-horizontal pull-right" action="{{ URL::action('CharactersController@post_search') }}" method="get">
        <div class="input-append spancustom">
            <input type="text" class="search-query" name="character" placeholder="Character/guild name">
            <button type="submit" class="btn"><i class="icon-search"></i></button>
        </div>
    </form>

当我尝试运行表单(进行搜索)时,我得到了一个Unknown action [CharactersController@post_search].错误。我以前也犯过这个错误,我试着切换控制器,试着做任何事情。但它没有起作用。所以我放弃了。

谁能解决它?

控制器是RESTful?

你在routes.php中创建了Route::controller()吗?

如果不是RESTFul,你能试着删除方法标题中的post_吗?

您实际上为控制器的方法定义了路由吗?您需要这样做,否则当您调用URL::action()

时,将抛出令人讨厌的异常

函数名称需要根据PSR-1进行camelBased。Chnage postrongearch到postSearch