У меня есть частичный успех реорганизации общих маршрутов laravel в класс. В настоящее время я пытаюсь найти контроллер.Рефактор Laravel Маршруты
Вот основной образец, который я рефакторинг. Я нужен один и тот же шаблон для vendors
, users
, terminals
и т.д.
Route::group(['middleware' => ['csrf','DashboardAuthenticate'], 'namespace' => 'App\Http\Controllers'], function() {
Route::get('vendors/', '[email protected]');
Route::get('vendors/create', '[email protected]');
Route::get('vendors/{id}', '[email protected]');
Route::post('vendors/search', '[email protected]');
Route::put('vendors/', '[email protected]');
Route::delete('vendors/', '[email protected]');
Route::get('roles/', '[email protected]');
Route::get('roles/create', '[email protected]');
Route::get('roles/{id}', '[email protected]');
Route::post('roles/search', '[email protected]');
Route::put('roles/', '[email protected]');
Route::delete('roles/', '[email protected]');
Route::get('users/', '[email protected]');
Route::get('users/create', '[email protected]');
Route::get('users/{id}', '[email protected]');
Route::post('users/search', '[email protected]');
Route::put('users/', '[email protected]');
Route::delete('users/', '[email protected]');
Route::get('terminals/', '[email protected]');
Route::get('terminals/create', '[email protected]');
Route::get('terminals/{id}', '[email protected]');
Route::post('terminals/search', '[email protected]');
Route::put('terminals/', '[email protected]');
Route::delete('terminals/', '[email protected]');
});
реорганизовать Я сделал класс, который выглядит следующим образом: (файл класса CIRoute находится под App \ Classes \ Маршруты имен)
class CIRoutes
{
public static function addRoutes($name)
{
$n2 = ucfirst($name);
Route::get($name.'s/', $n2.'[email protected]');
Route::get($name.'s/create', $n2.'[email protected]');
Route::get($name.'s/{id}', $n2.'[email protected]');
Route::post($name.'s/search', $n2.'[email protected]');
Route::put($name.'s/', $n2.'[email protected]');
Route::delete($name.'s/', $n2.'[email protected]');
}
}
Затем я создаю маршрут:
CIRoutes::addRoutes('vendors');
Я думал, что это работает нормально, но я ошибся. В настоящее время php artisan route:list
возвращается с Class App\Http\Controllers\RolesController does not exist
, который он делает - я имею в виду, что он отлично работает без рефакторинга.
Как я могу реорганизовать общий шаблон маршрута?
этот код работает правильно - я звоню маршрут с множественное число от названия модели, что неверно. 'CIRoutes :: addRoutes ('users');' должно быть 'CIRoutes :: addRoutes ('user');'. duh duh duh – Iannazzi