我已经在Laravel中定义了一条API路线,就像这样
Route::group(array('prefix' => 'api'), function() {
Route::resource('getdealsbymerchant/{merchant_url_text}', 'dealsController@index');
});
这条路线工作正常并给我回复。我想在小组中添加这样的另一条路线
Route::resource('getsimilarmerchants/{merchant_id}', 'similarmerchantsController@index');
然而,当我添加此内容并尝试点击
时http://localhost/api/getsimilarmerchants/123
它给了我一个错误
Route pattern "/api/getdealsbymerchant/{merchant_url_text}/{{merchant_url_text}}" cannot reference variable name "merchant_url_text" more than once.
有关我如何解决此问题的任何帮助?
答案 0 :(得分:0)
为什么资源控制器指向某个方法? 它应该是
Route::resource('getdealsbymerchant', 'dealsController');
同样也定义第二个资源。在此处阅读更多内容:http://laravel.com/docs/5.0/controllers#restful-resource-controllers
如果您只想要一个获取/发布路线,请按以下方式定义
Route::get('getdealsbymerchant/{merchant_url_text}', 'dealsController@index');
答案 1 :(得分:0)
看起来我做错了。
定义了2条这样的路线,并且能够解决问题。
Route::get('api/getsimilarmerchants/{merchant_id}', ['uses' => 'similarmerchantsController@index']);
Route::get('api/getdealsbymerchant/{merchant_url_text}', ['uses' => 'dealsController@index']);