2

我刚开始使用 Laravel,我非常喜欢路由的想法,但是我创建的任何带有通配符的路由都会退回到 Laravel 404 路由。

这是我的路线文件:

# This loads fine
Route::get('hello', function(){
   return 'Hello!';
});

# This gives me a 404
Route::get('hello/(:any)', function ($name) {
    return "Welcome, $name.";
});

Route::get( array('/'), function()
{
    return View::make('home.index');
});

Event::listen('404', function()
{
    return Response::error('404');
});

Event::listen('500', function()
{
    return Response::error('500');
});

我也试过any无济于事。

Route::any('hello/(:any)', function ($name) {
    return "Sup, $name?";
});

关于为什么我得到 404 的任何想法?

编辑: 我猜我的 PHP 配置有问题,并且没有正确处理类的别名或其他东西。大多数情况下,添加一个将别名映射到类的辅助类都可以。

4

2 回答 2

5

对于 Laravel 的任何其他新人,这就是您使用可选参数设置路由的方式。

Route::get('hello/(:any?)', function ($name = 'default') {
    return "Welcome, $name.";
});
于 2012-09-02T00:09:12.930 回答
2

您的 Apache 重写模块是否启用?
我已经在我的 Laravel 安装上尝试了你的第一条路线,它工作正常。

于 2012-09-01T20:19:11.170 回答