Может войдёшь?
Черновики Написать статью Профиль

«Новое в 5.3»

Используем Vue в Laravel 5.3 с начальной загрузкой и образцом компонента

перевод новое в 5.3

Использовать компоненты Vue в Laravel 5.3 прямо из коробки стало проще, чем когда-либо, потому что в 5.3 по умолчанию более продуманный стек для фронтенда, чем в предыдущих версиях. Не переживайте, разобраться в компонентах по умолчанию не сложно.

Давайте вместе посмотрим на стек JavaScript в Laravel 5.3. Запустите пример приложения с помощью установщика Laravel (а если вы похожи на меня, используйте Lambo), и откройте сайт в своей любимой IDE.

Обновление обработчиков очереди в Laravel 5.3

перевод новое в 5.3

Очереди — один из тех инструментов Laravel, о котором все знают, но мало кто понимает их полностью. И это не удивительно, ведь многие впервые сталкиваются с очередями именно в Laravel, а они не так уж и просты, на самом деле.

К счастью, в Laravel 5.3 произошло совсем немного внешних изменений в работе с очередями.

Знакомство с Laravel Echo: подробный разбор

перевод новое в 5.3

С помощью инструмента Laravel Echo вы легко сможете использовать мощь WebSockets в своих Laravel-приложениях. Он упрощает самые необходимые и самые трудные аспекты построения сложных взаимодействий WebSockets.

Echo состоит из двух частей: набора улучшений для системы вещания сообщений Laravel (Event broadcasting system), и нового пакета JavaScript.

Бэкендовые компоненты Echo уже встроены в ядро Laravel, начиная с версии 5.3, их не надо импортировать (в этом их отличие от таких компонентов, как Cashier). Вы можете использовать эти бэкендовые улучшения с любым JavaScript-фронтендом…

Новая система уведомлений в Laravel 5.3

перевод новое в 5.3

В предыдущей статье я описал новую функцию Laravel Mailable и рассказал о некоторых важных изменениях в отправке писем в Laravel. Советую ознакомиться с ней, если вы ещё не прочитали. В двух словах: предыдущий почтовый синтаксис больше не использует «классические» почтовые замыкания, вместо этого создаются «отправляемые» (Mailable) классы для каждого отдельного письма — например, отправляемый класс «WelcomeNewUser» (Приветствие нового пользователя).

В Laravel 5.3 появилась ещё одна возможность взаимодействия с пользователями: Уведомления.

Представьте какое-нибудь сообщение…

Изменения в структуре папок в Laravel 5.3

перевод новое в 5.3

Мы уже рассмотрели новую папку routes и изменения в структуре папок. Но в Laravel 5.3 появилось ещё одно изменение — многие папки не создаются до тех пор, пока вы не выполните команду, которая к ним обращается.

Эти папки создавались в каждой новой версии до Laravel 5.3, но при этом часто не использовались, поэтому в новых установках их не будет. Вот список исчезнувших папок:

  • Events
  • Jobs
  • Listeners
  • Policies

Знакомство с Mailables в Laravel 5.3

перевод новое в 5.3

Долгое время отправка писем в Laravel была не очень удобной в сравнении с относительно простым API большинства других функций Laravel. Вот пример отправки письма из документации Laravel 5.2:

PHP
Mail::send('emails.reminder', ['user' => $user], function ($m) use ($user) {
    
$m->from('hello@app.com''Ваше приложение');

    
$m->to($user->email$user->name)->subject('Ваше напоминание!');
});

Знакомство с Laravel Scout

перевод новое в 5.3

За последние несколько лет в сообществе Laravel приобрели большую популярность поисковые инструменты ElasticSearch и Algolia — мощные средства для индексирования и поиска ваших данных. Бен Корлет проделал невероятную работу, представив ElasticSearch на Laracon Eu 2014, а я написал запрос на включение в Laravel написанного мной индексирования для документов на основе ElasticSearch в 2015 году. Но перед тем, как мой запрос был одобрен, люди из Algolia взяли мой код и переделали его на основе Algolia (она быстрее, и у неё лучше пользовательский интерфейс!), и теперь именно этот поиск вы видите в документации Laravel.

antoha75

Смотрел я Laravel Scout. Не очень убедительная штука. Во-первых, ясно, что Тейлор за Algolia, т.к. она платная и у него конечно есть тут коммерческий интерес. Поддержку Elasticsearch он то добавлял, то исключал, потом опять включал. Есть в его действиях какая-то непоследовательность. Ему даже в твиттере об этом кто-то написал.

Поддержка бесплатного и прекрасного Elasticsearch в Laravel Scout очень ограничена. Например, там нет агрегаций. Вывод такой — вместо использования скаута можно спокойно использовать полнотекстовый поиск mysql. А если нужен серьезный поиск по большой базе, то гораздо лучше поставить стандартный php-клиент от сообщества Elasticsearch, который может реально все!

Настройка шаблонов страничного вывода в Laravel 5.3

перевод новое в 5.3

В Laravel отличная библиотека страничного вывода, потому что страничный вывод является одной из основных задач, а библиотека берёт на себя почти всю работу. Раньше изменять свои шаблоны страничного вывода было так же просто, как и работать с самой библиотекой.

Но в целях упрощения экспорта библиотеки страничного вывода в проекты на других фреймворках, в Laravel 5.0 (а может и раньше) появилась намного более сложная — но более переносимая — система шаблонов страничного вывода.

К счастью, в Laravel 5.3 всё стало так, как раньше — легко и просто.

Voker57

А если, допустим, у меня несколько страничек... Например About us, Contacts с идентичными представлениями, не писать же мне под каждый маршрут (/about-us, /contacts) свой роут, подскажите каким образом можно задать схожим страницам одно представление.

Правила проверки размера изображения в Laravel 5.3

перевод новое в 5.3

В Laravel 5.3 появилась новая возможность проверки ввода: размер загружаемого изображения. Правило проверки называется dimensions, оно принимает следующие параметры:

  • min_width — минимальная ширина (в пикселях)
  • max_width — максимальная ширина
  • min_height — минимальная высота
  • max_height — максимальная высота
  • width — требуемая ширина (должна быть равной этому значению)
  • height — требуемая высота
  • ratio — требуемое соотношение сторон (указывается в виде «ширина/высота»)

Дополнительные операции с Collection::where в Laravel 5.3

перевод новое в 5.3

Если вам надо отфильтровать коллекцию Laravel и получить только те записи, которые соответствуют заданным критериям, то скорее всего вы воспользуетесь методами PHPfilter() или PHPreject(). Вот как это работает:

← Назад | ДальшеДвижется на Habravel