- PVSM.RU - https://www.pvsm.ru -
В самом начале этой недели, в понедельник, состоялся официальный релиз Laravel 5.2.
В новой версии были улучшены такие вещи, как авторизация, «связывание» модели с route и другие.
Более подробно под катом.
Теперь вы можете при помощи одной команды сгенерировать чистые и совместимые с Bootstrap представления (view) для авторизации, регистрации и восстановление пароля пользователей.
php artisan make:auth
Однако, это стоит использовать лишь для новых, только что созданных, приложений.
Если вы работаете с массивом полей формы, то теперь валидатор в Laravel 5.2 умеет работать с массивами!
Например, если вы создаёте более одного пользователя за один раз, то вы можете сделать так:
$validator = Validator::make($request->all(), [
'person.*.phone' => 'unique:users'
]);
В данном примере, каждый из пользователей должен иметь уникальный номер телефона.
Или же, если вы создаете свой Request:
public function rules()
{
return [
'person.*.phone' => 'unique:users'
];
}
Больше никаких Route::model()!
Начиная с версии 5.2, можно простым тайп-хинтом указать, с какой моделью необходимо работать:
Route::get('/user/{user}', function (User $user) {
return $user;
});
Важно упомянуть, что "{user}" и имя параметра, передаваемое в замыкание, должны совпадать.
Вы используете более одного middleware для нескольких ваших контроллеров? Вам надоело каждый раз перечислять их по одному? Не беда! Теперь можно их сгруппировать! Для этого, откройте файл аppHttpKernel.php и вы увидите, как вы можете это сделать. Например, по-умолчанию, уже создано 2 группы middleware:
protected $middlewareGroups = [
'web' => [
AppHttpMiddlewareEncryptCookies::class,
IlluminateCookieMiddlewareAddQueuedCookiesToResponse::class,
IlluminateSessionMiddlewareStartSession::class,
IlluminateViewMiddlewareShareErrorsFromSession::class,
AppHttpMiddlewareVerifyCsrfToken::class,
],
'api' => [
'throttle:60,1',
],
];
Как это использовать в коде? Очень просто:
Route::group(['middleware' => ['web']], function () {
//
});
Теперь вы можете задать лимит запросов за одну минуту с одного IP адреса:
Route::get('/api/users', ['middleware' => 'throttle:60,1', function () {
//
}]);
В данном примере, мы ограничиваем количество запросов с одного IP до 60 в минуту.
В Laravel 5.2 появилась возможность создавать свои области видимости для Eloquent. Это позволяет использовать их для каждого запроса к определенной модели.
Автор: dMarley
Источник [1]
Сайт-источник PVSM.RU: https://www.pvsm.ru
Путь до страницы источника: https://www.pvsm.ru/php-2/107415
Ссылки в тексте:
[1] Источник: http://habrahabr.ru/post/274065/
Нажмите здесь для печати.