Слава Україні!

Laravel 9. Установка

Цикл статей посвященных опыту разаработки web-приложений с помощью фреймворка Laravel. Установка.
14-го січня 2022, 1:31

Был у меня проект, где требовалось разработать сайт с несколькими поддоменами. Именно его я и взял как пример для этой статьи. Я не буду описывать полный цикл создания приложения - оно слишком большое. Остановлюсь лишь на наболее часто встречающихся моментах.

Установка фреймворка не должна вызывать затруднений. Воспользуемся composer`ом.


    php composer create-project laravel/laravel laravel

Эта команда установит Laravel в папку laravel. Все дальнейшие команды выполняются из этой папки.

Далее, нам необходимы будут формы регистрации, входа и т.п. А также какие-нибудь CSS и JS фреймворки. Я предпочитаю Bootstrap и jQuery. Посему и формы будут "заточены" под них.


    php composer require laravel/ui

На этом установка самого фреймворка закончена. Переходим к пакетам.

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


    php composer require nwidart/laravel-modules

Далее публикуем конфиги пакета


    php artisan vendor:publish --provider="Nwidart\Modules\LaravelModulesServiceProvider"

По умолчанию классы модулей не загружаются автоматически, поэтому следующий шаг настройки - внести их в автозагрузчик. Открываем файл composer.json, находим секцию "autoload" и добавляем туда модули. После этого секция должна выглядеть примерно так:


    ...
    "autoload": {
        "psr-4": {
            "App\\": "app/",
            "Modules\\": "Modules/",
            "Database\\Factories\\": "database/factories/",
            "Database\\Seeders\\": "database/seeders/"
        }
    },
    ...

Чтобы изменения вступили в силу, выполняем команду


    php composer dump-autoload

С модулями закончили. Все последующие пакеты, как говорится "на любителя", а точнее на Ваше усмотрение.

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


    php composer require arrilot/laravel-widgets

Таблицы данных. Очень мощный инструмент, включающий в себя, кроме самих таблиц, еще поиск, пагинацию и т.п. Инструмент действительно очень мощный и быстрый - работая с таблицей, в которой было более миллиона записей, особых тормозов не заметил.


    php composer require yajra/laravel-datatables-oracle

В следующей статье рассмотрим настройку маршрутизации и модулей

Важлива інформація

Міністерство оборони
України
з 24.02 по 18.03
втрати противника
орієнтовно склали:
897010 ( +1560 ) особового складу
10352 ( +8 ) танків
21509 ( +20 ) бойових бронемашин
24640 ( +42 ) артилерійських систем
1319 ( +1 ) РСЗВ
1107 ( +3 ) засоби ППО
370 ( +0 ) літаків
331 ( +0 ) гелікоптерів
40892 ( +107 ) автомобільної техніки
28 ( +0 ) кораблі / катери
3121 ( +0 ) крилаті ракети
29616 ( +149 ) БПЛА
3780 ( +2 ) спец. техніки
4 ( +0 ) установок ОТРК/ТРК
1 ( +0 ) підводні човни