4

我在 L4(可能是 symfony2?)路由方面遇到了一些问题,我似乎无法在线或在精彩的 Code Bright 中找到任何资源,但在 IRC 中却一无所获。

我正在尝试通过控制器使用带有命名路由的可选参数,但在加载视图时收到错误。

路线:

Route::get('/topic/{topicID?}', array(
    'as'    => 'topicDetails',
    'uses'  => 'TopicController@showTopic'
));

控制器:

class TopicController extends BaseController {

    public function showTopic($topicID = null)
    {
        $data['topicID'] = $topicID;
        return View::make('topic_view', $data);
    }
}

看法

<a href="{{ route('topicDetails') }}">XXX</a>

错误:

Parameter "topicID" for route "topicDetails" must match "[^/]++" ("" given) to generate a corresponding URL.

我假设这没有将null价值传递给,$param但我对 L4 不够熟悉,无法弄清楚它为什么不起作用,而且我已经用尽了所有资源。

任何线索将不胜感激谢谢!

4

1 回答 1

11

这个

<a href="{{ route('topicDetails') }}">XXX</a>

应该

<a href="{{ route('topicDetails', null) }}">XXX</a>
于 2013-08-03T08:14:33.217 回答