2016-10-24 1 views
0

Я абсолютно новичок с Laravel, и сейчас я изучаю особенности маршрутов Framework.Подстановочный знак для перехода к контроллеру

Я хочу знать, можно ли сделать то же, что мы можем сделать с ASP.NET, чтобы перенаправить на контроллер, написанный в URL.

На самом деле, чтобы сделать что-то вроде:

<?php 

Route::get('/{CustomController}/{Action}', function ($controller, $action) { 
    return controller($controller, $action); 
}); 

Где CustomController является контроллер, который будет выполняться запрос к представлению Action

С ASP.NET Ядра, это что-то вроде:

routes.MapRoute(
    name: "default", 
    template: "{controller=Home}/{action=Index}"); 
}); 

ответ

1

Да, с маршрутами в ларавеле формат:

Route::get('/custom-controller', '[email protected]'); 

Если вы используете стандартные имена методов в контроллере, такие как index(), store() и т.д.

вы можете использовать ресурс вместо и он будет автоматически создать все ваши маршруты:

Route::resource('/my-route', 'CustomController'); 

Если вы затем сделайте php artisan route:list, вы увидите, что laravel автоматически добавила все стандартные маршруты для вашего контроллера.

+0

да но ... нет. Цель состоит в том, чтобы иметь 1 маршрут для контроллеров X, где контроллер выбирается в URL-адресе и может использоваться как переменная - модуль маршрутизации. – LeCintas

+1

Насколько я знаю, это не то, что встроено в 'laravel', если вам нужна эта функциональность, вам нужно будет расширить маршрутизатор. –

+0

Хорошо спасибо за вашу помощь;) – LeCintas

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