Что такое Laravel Backpack и как им пользоваться

Это удивительно, но на русском языке до сих пор нет ни одного материала о работе с пакетом Backpack для фреймворка Laravel. Исправляю это недоразумение. Итак, существует такой проект: https://backpackforlaravel.com/, и страница на github: https://github.com/Laravel-Backpack. По заявлению авторов, это: The most popular admin panel software for Laravel. Или на русском: Самая популярная панель администратора для Laravel. Нихуя себе заява, да?

Создавайте настраиваемые панели администрирования в 10 раз быстрее. Backpack поможет вам генерировать CRUD для ваших моделей Eloquent и легко создавать пользовательские CRUD для сложных сценариев использования. Мощная гибкая панель администратора, которую любят профессионалы Laravel. Laravel Backpack состоит из нескольких пакетов, составляющих его ядро.

Backpack\Base

Backpack\Base импортирует последнюю версию бесплатной темы AdminLTE, которой более чем достаточно для большинства панелей администратора или клиентского бэк-офиса. Пакет также включает:

  • макет для страниц администратора
  • страницы входа/ регистрации/ восстановления пароля
  • всплывающие уведомления для flashdata и js
  • шаблоны для большинства распространенных ошибок

Backpack\CRUD

Время на создание CRUD интерфейсов (Create Read Update Delete) не более 10 минут на каждую модель Eloquent. А также:

  • 44+ типов полей
  • 1-n отношения
    n-n отношения
  • Интеграция Datatables (стандартная или AJAX)
  • Файловый менеджер (с использованием elFinder)
  • Вложенная сортировка и упорядочивание элементов
  • Строка сведений (нажмите, чтобы развернуть таблицу строк)
  • Валидация на стороне бэкенда с использованием запросов формы

Проверено в продакшене профессионалами от презентационных веб-сайтов до сложных веб-приложений (CMS, CRM, ERP, электронная коммерция, электронное обучение).

Backpack\Generators

Создайте все файлы, необходимые для CRUD с одной командной строкой. Backpack\Generators позволит с одной командной строкой генерировать миграцию, модель, запрос и контроллер. Затем просто нужно открыть эти знакомые файлы, чтобы настроить свой CRUD.

Расширения для Backpack

Снова рутинная задача? Не решайте её с нуля. Возможно сообщество уже создало отличное решение, которое можно взять за основу.

  • Backpack\PermissionManager. Интерфейс CRUD для управления пользователями, ролями и разрешениями.
  • Backpack\Settings. Интерфейс позволяет администратору легко изменять настройки сайта. Каждый параметр может быть другого типа (электронная почта, флаг, текст, номер и т. д.), А их значения могут использоваться в коде, как любая переменная конфигурации: Config::get(‘settings.contact_email’)
  • Backpack\PageManager. Создайте за считанные минуты панель администратора для презентационных страниц (главная, контакты, о нас и т. д.). Вы определяете шаблоны страниц и какие поля должны иметь каждый шаблон в панели администратора. PageManager делает всё остальное.
  • Backpack\MenuCRUD. Добавляйте, редактируйте, удаляйте, переупорядочивайте и вставляйте пункты меню, с внутренними ссылками, внешними ссылками или ссылками на выбранную страницу.
  • Backpack\NewsCRUD. Добавляйте, редактируйте, удаляйте статьи новостей, категории и теги.
  • Backpack\BackupManager. Создавайте резервные копии базы данных и файлов и храните их на сервере или в Dropbox, S3 Bucket и т. д.
  • Backpack\LogManager. Предварительный просмотр, загрузка и удаление онлайн-журналов без SSH-входа на сервер.

Немного статистики

Как показывает Packagist, статистика за последние 30 дней, Backpack — самое популярное программное обеспечение для панели управления для Laravel.

  • 11 000 разработчиков используют Backpack каждый месяц
  • 90 контрибьюторов
  • 170 000 установок

Попробуйте, прежде чем покупать

Самый быстрый способ понять, подходит ли вам Backpack — установить рабочую демо-версию со всеми предварительно установленными пакетами Backpack.

Используя Backpack, вы соглашаетесь с его YUMMY-лицензией, которая в основном говорит, что вы можете использовать Backpack для некоммерческих целей (тестирование, NGOs, обучение, личные проекты), но нужно платить за коммерческое использование (для клиентов, работодателей и т. д.).

Шаг 1. Клонирование демо-репозитория

git clone https://github.com/Laravel-Backpack/demo.git backpack-demo

Эта сборка Laravel только для демонстрационных целей. В своём проекте вы должны установить Backpack поверх существующего проекта Laravel, используя composer.

Шаг 2. Настройте доступ к БД в файле .env

Шаг 3. Установите пакеты и настройте базу данных.

composer install
php artisan key:generate
php artisan migrate
php artisan db:seed

Шаг 4. Создайте пользователя

Перейдите по адресу http://localhost/backpack-demo/public/admin и зарегистрируйте пользователя.

В продакшене вы должны отключить возможность регистрации пользователей в конфигурационном файле config/backpack/base.php. Теперь самое время проверить этот файл, посмотреть, что доступно.

Шаг 5. Прочитайте

Чтобы получить профит от использования Backpack, вы должны понять, как он работает. И для этого у нас есть отличные ресурсы. Войдите в систему с Github в области участников Backpack. Первое, что вы увидите, это материалы для начинающих. Также есть 25-минутный текстовый курс, курс электронной почты (5 минут в день на 5 дней) и 3-минутное быстрое введение.

Шаг 6. Играйте с монстрами

Демо-версия поставляется с примером сущности  «Monster»  для демонстрации большинства функций Backpack и позволяет вам легко играть. Найдите модель монстра, запрос, миграцию и контроллер. Если вы прочитали статьи или письма, которые мы рекомендовали выше, вы должны быть готовы к игре.

Подведение итогов

Для проектов, которые будут выпущены в продакшен, пожалуйста, используйте процесс ручной установки. Это занимает больше времени, но это поможет вам установить только те пакеты, которые вы фактически используете. И монстры. Вы не хотите монстров, не так ли?