laravel的路线混乱

时间:2017-05-27 06:05:45

标签: laravel routes

我正在研究我有两条路线的项目,如

Route::get('project/{id}',          [ 'as'=>'add_project_info.project' , 'uses'=>'ProjectController@add_project_info']);
Route::get('project/notes/',    ['as'=>'notes.project','uses'=>'NotesController@index']);

现在问题是当我在url中调用“project / notes /”然后它重定向到“project / {id}”。laravel将“notes”假设为第一条路径的“id”。当我像

那样洗牌时
Route::get('project/notes/',    ['as'=>'notes.project','uses'=>'NotesController@index']);
Route::get('project/{id}',          [ 'as'=>'add_project_info.project' , 'uses'=>'ProjectController@add_project_info']);

然后它完美地工作。请给我一些更好的解决方法,谢谢

1 个答案:

答案 0 :(得分:0)

这就是它的工作原理。 Laravel将使用给定URI的第一个合适路由。因此,使其工作的唯一方法是改变这样的路线顺序:

Route::get('project/notes/', ['as' => 'notes.project', 'uses' => 'NotesController@index']);
Route::get('project/{id}', ['as' => 'add_project_info.project', 'uses' => 'ProjectController@add_project_info']);