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 が機能しない理由を理解できるほど L4 に精通しておらず、すべてのリソースを使い果たしました。

どんな手がかりも大歓迎ですありがとう!

4

1 に答える 1