Laravel过滤路线:在子集合时

时间:2014-05-20 10:58:52

标签: php laravel

我尝试使用路线添加过滤器:当在子集合上时它没有被触发。

以下是示例

URL

www.domain.com/firstcollection/id/subcollection

第一次收集时的工作路线

Route::when('firstcollection/*', 'auth_token', array('put')); 
www.domain.com/firstcollection

但是当我尝试使用Route时:在子集合上时,过滤器不会启动

Route::when('firstcollection/{id}/subcollection/*', 'auth_token', array('post'));
www.domain.com/firstcollection/id/subcollection

下面是完整代码

Route::filter('auth_token', function(){
//some logic here
}); 

Route::when('firstcollection/*', 'auth_token', array('put')); 
Route::when('firstcollection/{id}/subcollection/*', 'auth_token', array('post'));

1 个答案:

答案 0 :(得分:1)

尝试更改两条路线。否则第一张外卡也会捕获第二条路线

Route::when('firstcollection/{id}/subcollection/*', 'auth_token', array('post'));
Route::when('firstcollection/*', 'auth_token', array('put')); 

另外 - 我认为你不能在{""条款。系统正在寻找firstcollection / {id} / subcollection的实际网址 - 这不会起作用。但是既然你正在使用post和put - 这会有用。

Route::when('firstcollection/*', 'auth_token', array('post, put'));