в маршрутах. мы пишем какой-то маршрут для контроллера. такие как:
Route::post('/account/create',array(
'as' =>'account-create',
'uses'=>'AccountController@postCreate'
));
Я знаю, что «использует» — это поиск контроллера, с чем же «как» имеет дело?
as
используется для создания named-route
в Ларавелле.
Как the doc says
:
мы можем использовать их для ссылки на маршрут при создании URL-адресов или перенаправлений:
//generate URL
$url = URL::route('account-create');
//redirect to the route from another
$redirect = Redirect::route('account-create');
// with helpers
$url = route('account-create');
$redirect = redirect()->route('account-create');
as
предназначен для создания именованных маршрутов, и на самом деле это очень полезно. В вашем приложении вы можете создать URL или перенаправление, используя этот именованный маршрут URL::route('account-create');
а также Redirect::route('account-create');
и это дает вам огромный бонус.
Если вы решите, что хотите изменить свой URL, вы просто измените его в своем маршруте, и все будет работать без проблем, потому что в других частях вы использовали только имя маршрута.
Так, например, если вы используете именованные маршруты:
Route::post('/account/create',array(
'as' =>'account-create',
'uses'=>'AccountController@postCreate'
));
и в других частях URL::route('account-create');
а также Redirect::route('account-create');
и теперь вы решили, что хотите изменить URL-адрес с /account/create
в newaccount
вам нужно изменить только в routes.php
/account/create
в newaccount
и все ваше приложение будет работать без проблем
Напротив, если вы использовали URL-адреса в другой части вашего приложения, если вы хотите изменить этот URL-адрес маршрута, вам потребуется изменить URL-адреса во многих частях вашего приложения, поэтому вам следует использовать именованные маршруты, поскольку это может сэкономить вам огромное количество времени, если Вы решили изменить некоторые URL в будущем.
Например, если вы не используете named-маршруты:
Route::post('/account/create',array(
'uses'=>'AccountController@postCreate'
));
и в других частях URL::to('/account/create');
а также Redirect::to('/account/create');
и теперь вы решили изменить свой URL с /account/create
в newaccount
вам нужно будет изменить его не только в routes.php
файл, но во всех файлах, которые используют этот URL, где вы делаете любой URL::to('/account/create');
или же Redirect::to('/account/create');