路由参数不起作用及其抛出和错误
throw new NotFoundHttpException;
routes.php文件
Route::any('/share-to-group/(:any)/(:any)',array('as' => 'share-to-group',
'uses' => 'HomeController@shareToGroup'));
视图中的
<a href="{{ URL::to('share-to-group',[ $group['group_id'], $UnixDateTime ]) }}">Something</a>
和控制器
function shareToGroup($group_id,$unixtime){
echo $group_id.$unixtime;exit;
}
我在做什么错?
我已经审查了以下链接,但这完全不同,这之间没有任何独特之处,我认为这不重复。 How to pass query string params to routes in Laravel4
答案 0 :(得分:6)
根据Routing with parameters,使用参数定义路线的正确方法是:
基本路线参数
Route::get('user/{id}', function($id)
{
return 'User '.$id;
});
注意:路由参数不能包含 - 字符。改为使用下划线(_)。
可选路线参数
Route::get('user/{name?}', function($name = null)
{
return $name;
});
具有默认值的可选路径参数
Route::get('user/{name?}', function($name = 'John')
{
return $name;
});
您错误的是您使用(:any)
代替{any?}
您的声明应如下所示:
Route::any('/share-to-group/{param1?}/{param2?}',array(
'as' => 'share-to-group',
'uses' => 'HomeController@shareToGroup'
));