0

我有个问题。

我有代码:

Route::set('user', '(<controller>(/<id>))')
->defaults(array(
    'controller' => 'user',

    'id' => '\d+',
));

而 mydomain.com/user/1 不起作用..

错误:

在此服务器上找不到请求的 URL user/1。

但是当我在控制器和 id (或其他东西)之间设置点时:

    Route::set('user', '(<controller>.abc(/<id>))')
->defaults(array(
    'controller' => 'user',
    'id' => '\d+',
));

mydomain.com/user.abc/1 工作。

为什么?:(

谢谢!

4

1 回答 1

2

你想检查是否id是数字,对吧?然后像这样将它放在默认值中不是正确的方式,正如您可以在3.3 文档中阅读的那样

Route::set('user', '(<controller>(/<id>))',
    array(
        'id' => '\d+',
    ))
    ->defaults(array(
        'controller' => 'user',
        'action' => 'index',
    ));

如果您有多个路线,那么在哪里定义该路线也很重要。您必须在路由中或默认提供操作doc )

于 2013-04-04T00:24:40.007 回答