2016-11-14 2 views
0

Я использую этот маршрут в проекте, размещенном на моем локальном компьютере Mac, он работает, но когда я загрузил его на сервер, возник конфликт конфликта Ubunto.Конфликт маршрута Laravel с маршрутами ресурсов

Route::group(['prefix'=>'report', 'middleware' => ['auth','session', 'complete_profile']], function() { 
    Route::get('/get_query', '[email protected]_queries'); 
}); 

Route::group(['middleware' => ['auth','session', 'complete_profile']], function(){ 
    Route::resource('report','ReportController'); 
}); 

, например, когда я использую форму первого маршрут report/get_query в онлайном ubunto сервере он идет к show($id) методу этого контроллера, но в местном его работе. Что мне делать с этим?

+0

Пробовал ли вы поместить первую группу маршрутов после маршрута ресурса? – prateekkathal

+0

@prateekkathal Я протестировал это, но в то время конфликт произошел на моем локальном mac – jones

+0

Обратите внимание, что в Ubuntu все зависит от регистра. Даже index.Php и index.php будут иметь огромное значение. Проверьте, есть ли у вас ошибки в верхнем и нижнем регистре. Случилось очень много – Markinson

ответ

1
Route::group(['prefix'=>'report', 'middleware' => ['auth','session', 'complete_profile']], function() { 
    Route::resource('/','ReportController',['except' => ['show']]); 
    Route::get('/get_query', '[email protected]_queries'); 
}); 

Путь ресурсов имеет предопределенный маршрут для методов http. Например reporte ресурс имеет маршрут:

Route::get('report/{report}','[email protected]'); 

Решения является исключить некоторую methodes (маршруты из restfull ресурса), или сделать несколько маршрутов, которые обыкновение конфликта с маршрутом ресурсом.

Вы можете увидеть, что маршрут вы зарегистрировались командой:

php artisan route:list 

Также один маршрут группы для отчета достаточно просто положить «/» в пути ресурсов.

Смежные вопросы