Laravel на прокачку

Mar 22, 05:40 am Категория:

Пока голова занимается обоснованием необходимости переноса этого сайта на Laravel, я готовлю установленную версию фреймворка к великим делам. Причём не важно, с этим сайтом или с другим, но дела будут. А значит нужно установить всё, что… нужно. Это как в статьях типа “7 неотложных дел перед сексом на Красной площади” – чётко и по полочкам разложенное личное мнение, претендующее на звание истины в последней инстанции. Ну если быть скромнее, то чек-лист по доводке свежеустановленного Laravel. Пожалуй, я повторю пункты, прописанные где-то ранее. Чисто чтобы были в одном месте.

Установка

composer create-project laravel/laravel project.name --prefer-dist

после сообщения о генерации access tokens переходим в директорию проекта и устанавливаем разрешения

сd  project.name
chmod +x artisan
chmod 777 storage
chmod 777 storage/* -R
chmod 777 bootstrap/cache
chmod 777 bootstrap/cache/* -R

Проверяем наличие и состав .env. Если файла нет, создаём его

cp .env.example .env

В файле проверяем и устанавливаем нужные значения переменных

APP_ENV=local
APP_DEBUG=true
APP_KEY=SomeRandomString
APP_URL=http://localhost

Если значение APP_KEY установлено в SomeRandomString, то запускаем команду

./artisan key:generate

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

Устанавливаем параметры соединения с базой данных. Если этого не требуется, то я даже не знаю, зачем Laravel устанавливался.

DB_HOST=127.0.0.1
DB_PORT=3306
DB_DATABASE=homestead
DB_USERNAME=homestead
DB_PASSWORD=secret

Отлично. Теперь устанавливаем миграции и идентификационный каркас (authentication scaffold) – набор представлений, контроллер и дополнение роутера.

./artisan migrate
./artisan make:auth

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

Laravel Debugbar – обязательный пакет на девелоперской установке Laravel. Почитать подробности можно по ссылке. Установка происходит в два приёма:

composer require barryvdh/laravel-debugbar

Дожидаемся окончания загрузки и обновления и в файл config/app.php добавляем две строки:

Barryvdh\Debugbar\ServiceProvider::class, в массив ‘providers’
'Debugbar' => Barryvdh\Debugbar\Facade::class, в массив aliases

Я добавляю эти строки в конце массива, чтобы проще было находить и, при необходимости, удалять/редактировать.

Если захочется что-то редактировать в установках пакета, выполняем

php artisan vendor:publish --provider="Barryvdh\Debugbar\ServiceProvider"

Принцип понятен? Дальше быстренько ещё несколько пакетов.

Laravel 5 IDE Helper Generator – генератор хелпера для автодополнения в редакторах. Автор тот же. Маст хэв.

composer require barryvdh/laravel-ide-helper

Barryvdh\LaravelIdeHelper\IdeHelperServiceProvider::class, в массив ‘providers’ и после этого выполнить команду

php artisan ide-helper:generate

Чтобы хелпер генерировался при каждом изменении состава фреймворка, в composer.json внести такие правки:

"scripts":{
    "post-update-cmd": [
        "php artisan clear-compiled",
        "php artisan ide-helper:generate",
        "php artisan optimize"
    ]
},

Intervention Image – годный пакет для работы с графикой: резать, крутить, зумить и т.п. Если есть какая-нибудь работа с графикой, хоть превьюшки делать, хоть фотошоп изображать, нужно ставить. GD2 или IMagick должны присутствовать на сервере.

composer.phar require intervention/image

Intervention\Image\ImageServiceProvider::class, в массив ‘providers’
'Image' => Intervention\Image\Facades\Image::class, в массив aliases

Laravel Socialite – пакет для работы с социальными сетями. Тот самый OAuth, да.

composer require laravel/socialite

Laravel\Socialite\SocialiteServiceProvider::class, в массив ‘providers’
'Socialite' => Laravel\Socialite\Facades\Socialite::class, в массив aliases

Разумеется потом нужно будет добавлять все эти ключи секретные, урлы для колбеков и редиректов. Для отечественных VK/OK ещё бубны потребуются. Но при должном усердии оно подключается.

Laravel Collective – набор хелперов для генерации форм и других элементов html. Обычно требуется при использовании старых наработок. В процессе разработки из ядра эта функциональность была удалена, но группа энтузиастов создала пакет с ними. Опенсорс, чо.

composer require laravelcollective/html

Collective\Html\HtmlServiceProvider::class, в массив ‘providers’
'Form' => Collective\Html\FormFacade::class, в массив aliases
'Html' => Collective\Html\HtmlFacade::class, в массив aliases

Для начала всё. Можно все пакеты заставить поделиться своими тайнами

./artisan vendor:publish

Как со всем этим богатством обращаться потом разберёмся. Главное, что оно уже установлено.

Теги этой статьи:

 

Комментарии

2017-08-18 8:33 pm , Оставь комментарий