Обновить
8.6

Laravel *

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

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

Создаем todo для удаленной команды на Laravel

Время на прочтение8 мин
Количество просмотров5.5K
Салют, хабровчане. Следующая статья была написана одним из наших постоянных читателей и определенно не претендует на звание хардкорного материала, но при этом вполне может послужить туториалом для новичка. Ждем в комментариях ваше мнение по статье, а за более хардкорными знаниями приглашаем на наш курс «Framework Laravel».




Всем привет! Сегодня, в столь «удаленное» для всех время работы, я бы хотел разобрать создание несложной todo, в которой можно создавать свои задачи. Звучит как то, что написано в официальной документации Laravel, и так оно и есть — я использую их todo в качестве базовой основы, немного его трансформирую, а основная часть моего рассказа будет про то, как же создавать роль администратора, и создать очередной нелепый клон Trello.
Читать дальше →

Craftable — Laravel CRUD generator

Время на прочтение6 мин
Количество просмотров13K
Всем привет.

Расскажу о CRUD генераторе для Laravel. Для студенческой работы мне надо было сделать много CRUD формочек, последний раз когда у меня была такая задача (в 2017), я использовал Yii2 и Gii.

В этот раз я решил сделать решение на базе Laravel, но своего встроенного генератора для GUI в Ларавель не завезли, пришлось искать «стороннее» решение.

Гугл выдал четыре варианта, первым шёл CRUDBooster, с ним я бился пару часов, ни чего не получилось, код генериться, GUI нет.

Следующим был Craftable, с этим товарищем тоже пришлось повозиться, даже просто что бы его установить, но какой то GUI он генерил и я решил на этом варианте остановиться.

Ниже я расскажу о работе с Craftable и покажу пару скриншотов GUI.
Читать дальше →

PHP-Дайджест № 177 (23 марта – 6 апреля 2020)

Время на прочтение4 мин
Количество просмотров12K

Свежая подборка со ссылками на новости и материалы. В выпуске: расписание релиза PHP 8, анализ эргономики объектов в PHP и 5 свежих RFC из PHP Internals, немного полезных инструментов, видео, подкасты и многое другое.

Приятного чтения!


Читать дальше →

Используем трейты для полиморфных связей в Laravel

Время на прочтение6 мин
Количество просмотров10K

Введение


Поговорим о возможном применении трейтов вместе с полиморфными отношениями в Laravel.


Содержание статьи:


  1. Описание предметной области
  2. Создание приложения
  3. Возможные структуры БД
  4. Создание сущностей
  5. Использование трейта
  6. Написание тестов
Продолжение под катом

Расширяем Laravel за счет собственных компонентов

Время на прочтение3 мин
Количество просмотров4.1K

Задача


Добавить в приложение систему оповещения пользователей через СМС-сообщения с возможностью выбора провайдера.

Решение


Оптимальным решением, на мой взгляд, является добавление собственного компонента.
Компонент — это блок программы с четко определенным набором действий (контрактом), способный решать возложенные на него задачи посредством различных драйверов. Так, например, встроенный компонент Cache может использовать драйвера: file, memcached или redis.

При построении нашего компонента, мы применим принцип проектирования Мост, тот же принцип, на котором построены компоненты Laravel.

Итак, приступим.
Читать дальше →

Небольшие хитрости для тестирования веб-приложений на Laravel с использованием Model Factories

Время на прочтение5 мин
Количество просмотров6.3K

Введение


Давайте представим, что мы разрабатываем небольшое веб-приложение на Laravel версии выше 6 и хотим написать для него тесты.


Содержание статьи приведено ниже:


  1. Описание предметной области
  2. Создание приложения
  3. Создание сущностей
  4. Написание тестов
  5. Проблема
  6. Решение
Продолжение под катом

PHP-Дайджест № 176 (11 – 23 марта 2020)

Время на прочтение4 мин
Количество просмотров14K

Свежая подборка со ссылками на новости и материалы. В выпуске: обновления PHP и Composer 1.10, переносы конференций, 3 новых RFC предложения из PHP Internals, порция полезных инструментов, видео, подкасты и многое другое.

Приятного чтения!


Читать дальше →

Принцип DRY на примере Laravel

Время на прочтение4 мин
Количество просмотров11K
Рассмотрим простой модуль, отвечающий за добавление новых пользователей.

И на его примере увидим, какие возможности открывает применение принципа DRY.

Для меня принцип DRY (Don't Repeat Yourself) всегда воплощался в двух основных определениях:

  1. Дублирование знаний — всегда нарушение принципа
  2. Дублирование кода — не всегда нарушение принципа

Начнем с контроллеров содержащих минимальное количество логики.
Читать дальше →

Митапы PHP-сообществ в марте, которые переходят в онлайн или переносятся

Время на прочтение3 мин
Количество просмотров1.6K


С осени мы ведем список встреч вокруг PHP в разных уголках страны, а Роман pronskiy Пронский публикует ближайшие из них короткой строкой в своем замечательном дайджесте. В этот раз хотим пойти чуть дальше и рассказать чуть больше о каждом сообществе.
Читать дальше →

Книга «Laravel. Полное руководство. 2-е издание»

Время на прочтение13 мин
Количество просмотров19K
image Привет, Хаброжители! Что отличает Laravel от других PHP-фреймворков? Скорость и простота. Стремительная разработка приложений, обширная экосистема и набор инструментов Laravel позволяют быстро создавать сайты и приложения, отличающиеся чистым удобочитаемым кодом.

Мэтт Стаффер, известный преподаватель и ведущий разработчик, предлагает как общий обзор фреймворка, так и конкретные примеры работы с ним. Опытным PHP-разработчикам книга поможет быстро войти в новую тему, чтобы реализовать проект на Laravel. В издании также раскрыты темы Laravel Dusk и Horizon, собрана информация о ресурсах сообщества и других пакетах, не входящих в ядро Laravel. В этой книге вы найдете: • Инструменты для сбора, проверки, нормализации, фильтрации данных пользователя • Blade, мощный пользовательский шаблонизатор Laravel • Выразительная модель Eloquent ORM для работы с базами данных приложений • Информация о роли объекта Illuminate Request в жизненном цикле приложения • PHPUnit, Mockery и Dusk для тестирования вашего PHP-кода • Инструменты для написания JSON и RESTful API • Интерфейсы для доступа к файловой системе, сессиям, куки, кэшам и поиску • Реализации очередей, заданий, событий и публикации событий WebSocket
Читать дальше →

PHP-Дайджест № 175 (25 февраля – 10 марта 2020)

Время на прочтение4 мин
Количество просмотров13K

Свежая подборка со ссылками на новости и материалы. В выпуске: релизы Laravel 7 и CodeIgniter 4, атрибуты v2 и другие RFC-предложения из PHP Internals, порция полезных инструментов, видео, подкасты и многое другое.

Приятного чтения!


Читать дальше →

Laravel+Docker+Gitlab. С чего начать

Время на прочтение19 мин
Количество просмотров41K
Я обычно всегда обходился без докера и думал, что докер нужен только для больших проектов в больших компаниях. Но однажды я увидел как работает докер в паре с гитлабом у моего товарища и понял, что мне все таки стоит его изучить. Однако, как обычно это бывает, одной подходящей статьи я не нашел — они были либо слишком сложные, либо не полные, либо подразумевали, что вы все знаете само собой. Мне пришлось долго искать различные источники, соединять все это вместе и в итоге у меня получилось сделать простенький проект и CI/CD для него.

Всю работу можно разделить на три части: на локальной машине, на гитлабе и на сервере.

Итак, для реализации проекта нам понадобится аккаунт gitlab и удаленный сервер с виртуализацией KVM или XEN.

Часть 1. Локальная машина


На локальной машине необходимо установить docker.

Замечание
Тут небольшое отступление. Docker можно поставить как на Linux системах (как Ubuntu, например), так и на Windows и MacOS. По поводу macos я ничего сказать не могу, а вот установка под Windows не самая хорошая идея для начинающего. Как минимум из-за того, что все мануалы и документации написаны для linux систем. Так и из-за того, что можно нажить проблем с доступом к различным папкам и файлам. Также докер конфликтует с виртуальной машиной VirtualBox. Поэтому проще и быстрее будет сделать виртуальную машину с Ubuntu и работать под ней

Принцип Единой Ответственности (SRP) на примере Laravel

Время на прочтение4 мин
Количество просмотров9.5K
Принцип SRP (Принцип Единой Ответственности) — один из основополагающих принципов написания поддерживаемого кода. В этой статье я покажу как применить данный принцип на примере языка PHP и фреймворка Laravel.

Часто, описывая модель разработки MVC, на контроллер возлагаются необоснованно большие задачи. Получение параметров, бизнес логика, авторизация и ответ.

Конечно, в статьях и книгах это описывается в качестве примера, но часто воспринимается как призыв к действию в рабочих проектах. Такой подход неизбежно приведет к неконтролируемому разрастанию класса и сильно усложнит поддержку кода.
Читать дальше →

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

PHP-Дайджест № 174 (10 – 24 февраля 2020)

Время на прочтение5 мин
Количество просмотров15K

Свежая подборка со ссылками на новости и материалы. В выпуске: 5 новых RFC из PHP Internals, а также предложение по развитию языка и пара прототипов новых фич в виде пул-реквестов, порция полезных инструментов, видео, подкасты и многое другое.

Приятного чтения!


Читать дальше →

Представляем PHP 7.4: Производительность, Возможности, Устаревший Функционал

Время на прочтение8 мин
Количество просмотров22K

PHP постоянно развивается, и только что мир увидело их последнее обновление — PHP 7.4. Производительность и скорость продолжают расти, в чём мы убедились ещё в предыдущих релизах PHP 7. Предварительная загрузка — одно из самых ярких обновлений. Эта возможность позволяет значительно ускорить выполнение скрипта и делает код чище и быстрее благодаря уменьшённому количеству строк кода.


PHP является важным элементом всемирной паутины и используется более чем на 79% всех сайтов. Известные сайты, такие как Facebook, Википедия, WordPress и многие другие используют PHP.

Мы можем увидеть что скорость веб-сайтов WordPress увеличивается вдвое, если сравним сайты, работающие на PHP 5 и 7. От последней версии больше всего выиграют сайты на WordPress.

Читать дальше →

PHP-Дайджест № 173 (27 января – 10 февраля 2020)

Время на прочтение5 мин
Количество просмотров15K

Свежая подборка со ссылками на новости и материалы. В выпуске: PHPUnit 9 и другие релизы, 3 свежих RFC предложения из PHP Internals, порция полезных инструментов, видео, подкасты и многое другое.

Приятного чтения!


Читать дальше →

PHP-Дайджест № 172 (14 – 27 января 2020)

Время на прочтение3 мин
Количество просмотров16K

Свежая подборка со ссылками на новости и материалы. В выпуске: PHP 7.4.2 и другие релизы, Stringable RFC, обзор PHP 8, порция полезных инструментов, 4 ближайших митапа, видеозаписи с конференций, стримы и многое другое.

Приятного чтения!


Читать дальше →

Концепция фильтрации моделей на примере Laravel

Время на прочтение4 мин
Количество просмотров27K
Хочу представить вашему вниманию концепцию организации фильтрации по URL-запросу. Для примера буду использовать язык PHP и фреймворк Laravel.

Концепция


Идея заключается в создании универсального класса QueryFilter для работы с фильтрами.

GET /posts?title=source&status=active

Использую данный пример, мы будем фильтровать посты (модель Post) по следующим критериям:

  • Наличие слова «source» в поле title;
  • Значение «publish» в поле status;
Читать дальше →

Как в одиночку запустить продукт, если вы разработчик: советы от создателя Laravel Тейлора Отвела. Часть 3: Не сдаваться

Время на прочтение4 мин
Количество просмотров7.3K


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

Как Hyundai данные оберегал

Время на прочтение2 мин
Количество просмотров26K


(контакты скрыты, но контекст остался, он является общими вопросами, не несет конфиденциальную информацию и служит для валидации сотрудниками hyundai реальности информации указанной ниже)

Статья 29, ч.4 Конституции Р.Ф. – «Каждый имеет право свободно искать, получать, передавать, производить и распространять информацию». Но даже несмотря на это, любая компания о которой вы получите данные будет считать, что вы получили их незаконным путем и будет пытаться разобраться с вами досудебными методами.

Но что делать в случае, если компания сама предоставляет данные?

Добро пожаловать в «Хендэ мотор мануфактуринг рус».
Читать дальше →