我遇到了这个问题,如果我在第一个路由中定义了一个参数,那么第二个会抛出这个错误:
“路线模式”/ browse / {brand} / {{brand}}“不能多次引用变量名称”品牌“。”
Route::resource('browse/{brand}', 'BrowseController');
Route::group(array('prefix' => 'service'), function() {
Route::resource('authenticate', 'AuthenticationController');
});
如果我取出参数,当然会打破浏览路线,但是认证路线会起作用。
有谁知道这个的原因?
答案 0 :(得分:4)
原因是因为Route::resource
在您指定的控制器的后台为您创建了几个(RESTful)路由处理程序:
http://laravel.com/docs/controllers#resource-controllers
查看名为的表:资源控制器处理的操作
您可以看到Laravel已经为您处理了可以用来实现浏览的参数。
我认为Route::resource
的预期用法不会像您尝试的那样进行参数化。
当然,如果不符合您的需求,您可以随时实施其他路线。