参数不起作用的laravel路线

时间:2015-05-30 05:33:33

标签: php laravel laravel-4 routes

路由参数不起作用及其抛出和错误

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

1 个答案:

答案 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'
));