Маршрутизация URL: Laravel - PullRequest
       2

Маршрутизация URL: Laravel

0 голосов
/ 10 сентября 2018

Я работал над Laravel и делал некоторую маршрутизацию.Мне просто интересно, в чем разница между написанием маршрута как:

route::get('roles/{id}/edit',rolesController@edit);

против

route::get('roles/edit/{id}',rolesController@edit);

Одно различие отчетливо видно, и это размещение переменной id.Не могу понять другую причину.Пожалуйста, объясните это.

Ответы [ 4 ]

0 голосов
/ 10 сентября 2018

Нет никакой разницы, но вы можете посмотреть в reosource маршруты и контроллер. По сути, laravel Framework автоматически создает маршруты и методы для контроллеров, которые могут вам понадобиться в вашем проекте. Например: Если вы создадите контроллер следующим образом:

php artisan make:controller RolesController --resource

и создайте маршрут ресурса следующим образом:

Route::resource('/roles', 'RolesController ');

framework автоматически создает для вас эти маршруты:

Verb          Path                         Action  Route Name
GET           /roles                       index   roles.index
GET           /roles/create                create  roles.create
POST          /roles                       store   roles.store
GET           /roles/{roles}               show    roles.show
GET           /roles/{roles}/edit          edit    roles.edit
PUT|PATCH     /roles/{roles}               update  roles.update
DELETE        /roles/{roles}               destroy roles.destroy

Так что вам не нужно составлять собственные маршруты и спрашивать себя, верны они или нет. Обратитесь к официальной документации Laravel для получения дополнительной информации об этом.

0 голосов
/ 10 сентября 2018

Я полагаю, это вопрос предпочтения при использовании любого из этого. Может быть, например, если вы предоставляете опции редактирования профиля пользователя и сообщений, это может пригодиться, так как оба являются разными маршрутами, технически

0 голосов
/ 10 сентября 2018

Без разницы. От вас зависит, как вы хотели бы построить свои маршруты. Но попробуйте использовать лучшие практики, которые рекомендует создатель laravel (https://laravel.com/docs/5.7/controllers#resource-controllers).
А также я хочу обратить ваше внимание на то, как вы назвали свой контроллер. Вы должны использовать CamelCase для именования ваших файлов (https://github.com/alexeymezenin/laravel-best-practices/blob/master/README.md).

0 голосов
/ 10 сентября 2018

Кроме реального вида URL, нет никакой разницы в том, что касается фреймворка.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...