Обновить
7.53

Laravel *

Бесплатный веб-фреймворк с открытым кодом

Сначала показывать
Порог рейтинга
Уровень сложности

PHP и Laravel дайджест новостей за декабрь 2023 года

Время на прочтение5 мин
Охват и читатели5.9K

Краткий обзор новостей из мира PHP и Laravel за декабрь 2023 г от CutCode. Последний дайджест за год

Читать далее

Headless eCommerce на Laravel: Погружение в модульную архитектуру

Уровень сложностиСредний
Время на прочтение8 мин
Охват и читатели9.9K

Привет, Habr! Меня зовут Тальгат Хайруллов, я руководитель команды разработки в компании CS-Cart. В статье расскажу, как мы поверх Laravel реализовали фреймворк для быстрой и гибкой разработки API продукта с модульной архитектурой.

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

Читать далее

Изучение мидлварей в Laravel 11

Уровень сложностиПростой
Время на прочтение4 мин
Охват и читатели16K

Выход Laravel 11 намечен на первый квартал 2024-го года, что может произойти уже в следующем месяце.

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

Когда я создал проект с помощью команды laravel new project --dev, я был очень удивлён тем, насколько уменьшился размер проекта. Было очень удивительно видеть пустую папку config (можно опубликовать файлы конфигурации при помощи команды php artisan config:publish)!

И, конечно же, там нет Http Kernel. Итак... как же добавить или изменить мидлвари? До Laravel 11 ядро Http Kernel, располагающееся по пути app/Http/Kernel.php,было местом хранения всей конфигурации для мидлварей. Также до Laravel 11 не было необходимости трогать руками файл bootstrap/app.php, если только Вы не использовали фреймворк Lumen. Однако в новой версии его нужно...

Трогать мидлвари

Обзор LiveWire 3 и Volt

Время на прочтение13 мин
Охват и читатели11K

Приветствую всех поклонников Laravel!

Эта статья-обзор новой, уже третьей версии Livewire. Решил сделать эту статью после выпуска на youtube-канале видео обзора Livewire, который понравился аудитории. Ну и заодно также взглянем на новинку - Volt. Думаю, многие из вас ждали этот обзор и особенно обзор Volt.

Читать далее

PHP и Laravel дайджест новостей за ноябрь 2023 года

Время на прочтение5 мин
Охват и читатели4.6K

Всем привет! Краткий обзор новостей из мира PHP и Laravel за ноябрь 2023 года от Сергея Пантелеева и Данила Щуцкого.

Читать далее

Как сделасть кастомную 500-ую страницу в Laravel и пробрасывать ошибки в Sentry

Уровень сложностиПростой
Время на прочтение2 мин
Охват и читатели2.7K

Я расскажу, как отправлять ошибки в Senty и при этом выводить кастомную 500-ую ошибку, сверстанную из blade-компонентов.

Читать далее

MoonShine 2.0. Что нового?

Время на прочтение9 мин
Охват и читатели5.3K

Последние полгода наше комьюнити CutCode работает над новой версией нашей open-source админ-панели MoonShine. И вот недавно состоялся релиз MoonShine 2. Давайте пройдемся по всем значимым изменениям! Конечно, в одной статье я не смогу осветить все нововведения, но попробую сделать это по-максимуму. Ну а также расскажу о ближайших планах на MoonShine 3.

Читать далее

PHP и Laravel дайджест новостей за октябрь 2023 года

Время на прочтение3 мин
Охват и читатели6K

Всем привет! Краткий обзор новостей из мира PHP и Laravel за октябрь 2023 года  от Сергея Пантелеева и Данила Щуцкого.

Читать далее

Из чего состоят карьерные сайты: топ-5 фич и 4 месяца разработки

Уровень сложностиПростой
Время на прочтение6 мин
Охват и читатели3.3K

Всем привет! Меня зовут Данила Соловьев, я заместитель руководителя направления PHP в AGIMA. Недавно мы разработали собственное коробочное решение — это универсальный бэкенд для карьерных сайтов на Laravel. Мы можем разработать такой за четыре месяца. В этой статье объясняю, что побудило нас сделать такую коробку, из чего она состоит и кому может пригодиться.

Читать далее

Сортировка в Laravel по полям relation-ов

Уровень сложностиСредний
Время на прочтение5 мин
Охват и читатели6.1K

Недавно в рабочем проекте потребовалось реализовать универсальную сортировку, которая подходила бы для большинства моделей. Если с обычной сортировкой по полю всё просто - её, подробно описанную, вы найдёте в документации к фреймворку, то для случаев сортировки, когда требуемое поле находится НЕ в основной таблице, а в одной из связанных, информации оказалось исключительно мало и она была весьма разрозненной.

После завершения задачи решил создать этот более-менее "всеохватывающий" гайд.

Читать далее

Постановка задачи (Job) в очередь Laravel из хранимой процедуры или триггера PostgreSQL

Уровень сложностиПростой
Время на прочтение9 мин
Охват и читатели6.8K

Можно ли заставить приложение на Laravel реагировать на события, происходящие в функциях и триггерах СУБД PostgeSQL? Если повезёт с конфигурацией приложения, то можно. Используя задания и очереди Laravel.

Увлекательный туториал на примере простейшего приложения.

Читать далее

Импорт базы ГАР для нормализации собственной адресной базы в Laravel 10. Часть II, пишем консольное приложение

Уровень сложностиПростой
Время на прочтение39 мин
Охват и читатели7.9K

В предущей части

Исследование выгрузки базы ГАР


Что в этой части?

Создание консольного приложения Laravel, способного по команде artisan загрузить свежую выгрузку с сервера ГАР, распарсить её, занести данные в таблицы, используя многопоточность, и выдать данные в удобном табличном виде, используя представление базы данных.

Не требует web-сервера и запущенных воркеров Laravel.

Готовое приложение, расположенное на github.com прилагается.

В качестве бонуса: реализация «актуализации» устаревшей, но тем не менее, годной к употреблению информации.

Читать далее

Persistent-request библиотека для надежных запросов

Уровень сложностиСредний
Время на прочтение3 мин
Охват и читатели3.5K

Всем привет!

В этой статье расскажу, как решил написать библиотеку https://packagist.org/packages/xman12/persistent-request и что там внутри.

Как и любая библиотека, эта решает свои задачи, а именно гарантированное выполнение запроса и последующую обработку. Я находил, как минимум, одно решение, которое работает с подобной проблематикой — это temporal.io, но система монструозная, а мне хотелось, чего-то более легкого и приземленного, поэтому я решил написать свое решение этой задачи.

Читать далее

Ближайшие события

PHP и Laravel дайджест новостей за сентябрь 2023 года

Время на прочтение5 мин
Охват и читатели5.3K

Всем привет! Краткий обзор новостей из мира PHP и Laravel за сентябрь 2023 года  от Сергея Пантелеева и Данила Щуцкого.

Читать далее

Совет по безопасности: увеличьте количество проходов bcrypt

Уровень сложностиПростой
Время на прочтение3 мин
Охват и читатели5.1K

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

Узнать почему

Обзор NativePHP. Инструмент для создания собственных нативных desktop приложений на Laravel

Уровень сложностиСредний
Время на прочтение7 мин
Охват и читатели16K

Привет, коллеги!

В этой статье я сделаю небольшой обзор NativePHP, который появился на последнем Laracon. Что из себя представляет NativePHP? Перед нами фреймворк, который позволяет нам писать нативные десктоп приложения, используя PHP. Приложения кроссплатформенные - можно писать под Mac, Windows и Linux. И все это с использованием нашего любимого PHP с использованием Laravel. Но как обещают разработчики в будущем появятся и другие драйверы.

Читать далее

Импорт базы ГАР для нормализации собственной адресной базы в Laravel 10. Часть I, исследуем выгрузку ГАР

Уровень сложностиПростой
Время на прочтение8 мин
Охват и читатели8.7K

Решаемая задача

Зная UUID дома (ранее идентификатор ФИАС) требуется найти почтовый индекс, город, улицу и номер дома для отдельно взятого региона, и на этих данных создать собственные справочники. Используемая РСУБД — PostgeSQL, используемый фреймворк — Laravel 10.

Для кого может оказаться полезен данный материал

Для тех, кто решает схожую задачу или, кто решает задачу от противного, т.е. приводит в порядок свои базы, находя «Идентификатор ФИАС» по наименованиям городов, улиц и т.п. А так же всем, кто хочет разобраться в структуре базы ГАР, в рамках решаемой задачи.

Что в 1-й части

Подробный анализ выгрузки базы ГАР, описание полей, нахождение реляций.

Читать далее

Неортодоксальный Eloquent. Часть 2

Уровень сложностиСредний
Время на прочтение9 мин
Охват и читатели4K

Eloquent - это мощный и умный инструмент, нравящийся многим своими возможностями. Он позволяет с лёгкостью выполнять операции с базами данных, сохраняя при этом простоту использования. Реализуя паттерн Active Record (AR), описанный Фаулером в книге "PoEAA", является одним из лучших реализаций на сегодняшний день.

В этой статье я хотел бы рассказать о нескольких советах и рекомендациях, о которых узнал экспериментальным путём. Например, Вы когда-нибудь задумывались о том, чтобы тем или иным образом разделить жадные загрузки? Нет? Тогда, я уверен, Вы узнаете как минимум что-то новое, так что обязательно дочитайте до конца!

Если Вы ещё не читали первую часть, самое время это сделать.

Читать далее

Неортодоксальный Eloquent. Часть 1

Уровень сложностиСредний
Время на прочтение16 мин
Охват и читатели10K

Eloquent - это мощный и умный инструмент, нравящийся многим своими возможностями. Он позволяет с лёгкостью выполнять операции с базами данных, сохраняя при этом простоту использования. Реализуя паттерн Active Record (AR), описанный Фаулером в книге "PoEAA", является одним из лучших реализаций на сегодняшний день.

В этой статье я хотел бы рассказать о нескольких советах и рекомендациях, о которых узнал экспериментальным путём. Например, Вы когда-нибудь задумывались о том, чтобы тем или иным образом разделить жадные загрузки? Нет? Тогда, я уверен, Вы узнаете как минимум что-то новое, так что обязательно дочитайте до конца!

Как и все существующие инструменты, у Eloquent имеются свои нюансы. Как ответственные разработчики, мы всегда должны помнить о том, на что соглашаемся. Если Вы хотите узнать больше об AR и философии её разработки, очень рекомендую статью Шона МакКула.

Читать далее

Первый взгляд на MoonShine

Время на прочтение3 мин
Охват и читатели9.1K

Меня зовут Данил Щуцкий, я автор проекта CutCode. В этой статье я хотел рассказать вам о MoonShine — панели для администрирования для ваших проектов на Laravel.

Над MoonShine я работаю с участниками комьюнити CutCode. Это open‑source проект, основная задача которого — сделать админ‑панель максимально простую (для начинающих разработчиков) и в тоже время функциональную и кастомизируемую (для опытных).

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

В качестве стека был выбран TAL (Tailwindcss, Alpine.js, Laravel), на мой взгляд и функционально и перспективно.

На момент написания статьи актуальная версия MoonShine 1.62. Для работы MoonShine необходимо:

php >= 8.0

laravel >= 9.0

Для комфортного применения MoonShine написана документация, а также снят подробный видеогайд.

Читать далее