Этот пост — Шпаргалка по Laravel 8. Как установить и настроить.  Плюс настройка проекта в PhpStorm >= 2020.

Все операции для Debian >= 9 (логин под root), где УЖЕ установлены PHP >= 7.3 + composer (глобально), NGINX >= 1.14, Node.js >= 15.9 + npm.

Я работаю под Windows (Debian в виртуалке или на удаленном деве), но доступ к проектам прокинут через самбу с юзером www-data. А проекты в деве/проде я синхронизирую через rsync и небольшой скрипт на bash. Поэтому PhpStorm видит проекты как локальные без сервера, но все операции artisan я делаю в консоли виртуалки (putty).

Добавление домена в Nginx

Установка Laravel >= 8

Доки. Должен быть уже установлен глобально composer.

Подготовка базы

У меня MySQL 5.7 + PhpMyAdmin. В PMA создаю базу с юзером с collation = utf8mb4_unicode_ci чтобы эмоджишки хранить.

Подготовка PhpStorm

Настройка почты в Laravel

На обычный юзерский акк мейлру. Письма могут не доходить без dkim! Лучше использовать сервисы типа Mailgun, но конкретно Mailgun требует привязки карты даже для бесплатного аккаунта.

Локальный репозиторий для своих пакетов

Цепляю свой пакет по симлинку и тогда все изменения цепляются сразу, без composer update, но при этом могут быть моменты в автокомплите.

Шпаргалка по консоли Laravel (artisan)

Я в консоли под рутом, поэтому все команды исполняю под sudo -u www-data. Если этого не делать то модели/контроллеры будут создаваться под рутом и PhpStorm, который видит проект в шаре самбы под www-data, не сможет вносить изменения в модели/контроллеры, та и вообще рут тут не полезен.

Модели и миграции

Контроллеры

Создание комманды

Дока.


Создание фабрики

Создание правила валидации


 

Полезные сниппеты

Загрузка файлов в Laravel

Полезные пакеты