我遇到了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不太熟悉,弄清楚它为什么不起作用,而且我已经筋疲力尽了我所有的资源。
非常感谢任何线索谢谢!
答案 0 :(得分:11)
此
<a href="{{ route('topicDetails') }}">XXX</a>
应该是
<a href="{{ route('topicDetails', null) }}">XXX</a>