我已经使用 jefferyway 的 laravel4 生成器作为播放器设置了一个资源控制器。因此,当我转到 url /players/show 时,它会显示 show.blade.php。这是正确的。但是当我转到 /players/{whatever name field i can pass} 时,它会转到 show.blade.php。没有抛出 httpnotfoundexception 或任何错误。
这些是应用程序的控制器和路由文件。
我已经使用 jefferyway 的 laravel4 生成器作为播放器设置了一个资源控制器。因此,当我转到 url /players/show 时,它会显示 show.blade.php。这是正确的。但是当我转到 /players/{whatever name field i can pass} 时,它会转到 show.blade.php。没有抛出 httpnotfoundexception 或任何错误。
这些是应用程序的控制器和路由文件。
这就是它应该工作的方式。
第show45 行的方法处理对/players/{anything}.
Jeffery Way 在 Laravel 4 上有一个非常好的截屏系列,他详细解释了这一点:
当您注册资源控制器时,它将为您创建这些路由:
GET /players                                                    players.index            PlayerController@index                       
GET /players/create                                             players.create           PlayerController@create                      
POST /players                                                   players.store            PlayerController@store                       
GET /players/{players}                                          players.show             PlayerController@show                        
GET /players/{players}/edit                                     players.edit             PlayerController@edit                        
PUT /players/{players}                                          players.update           PlayerController@update                      
PATCH /players/{players}                                                                 PlayerController@update                      
DELETE /players/{players}                                       players.destroy          PlayerController@destroy 
您可以使用以下列表获得此列表:php artisan routes
您现在可以看到 player.show 将处理 /players/*
使用示例:
Route::group(array('before' => 'auth'), function()
{
    Route::get('/', function()
    {
        // Has Auth Filter
    });
    Route::get('user/profile', function()
    {
        // Has Auth Filter
    });
});