Download the PHP package jeyroik/extas-installer without Composer
On this page you can find all versions of the php package jeyroik/extas-installer. It is possible to download/install these versions without Composer. Possible dependencies are resolved automatically.
Informations about the package extas-installer
Описание
Данный пакет позволяет устаналивать совместимые с Extas'ом сущности.
Требования
- PHP 7.4+
- MongoDB 3+
Установка
Установка пакета
# composer require jeyroik/extas-installer:*
Инициализация Extas'a
# vendor/bin/extas init
Эта команда создаст дефолтные контейнеры классов и установит корневые плагины и расширения.
У инициализации имеются следующие стадии (для всех стадий имеются соответствующие интерфейсы):
extas.init: на этой стадии можно провести дополнительные операции по инициализации пакета.extas.init.section: на этой стадии можно провести дополнительные операции по инициализации секции.extas.init.item: на этой стадии можно провести дополнительные операции по инициализации конкретного элемента.
После данной операции установлены все минимально-необходимые плагины и расширения. Если необходимо, чтобы плагин/расширение были установлены данной командой, то необходимо в конфигурации плагина/расширения добавить:
install_on: initialization- Пример:
Установка сущностей
# vednor/bin/extas install -a my_app (короткая форма: extas i -a my_app)
Установка состоит из двух шагов:
- Сбор конфигураций пакетов.
- Установка найденных пакетов.
Имеется возможность с помощью плагинов подключиться к любому моменту в этих двух шагах (для всех стадий имеются соответствующие интерфейсы), стадии указаны по порядку срабатывания:
extas.crawl.packages: срабатывает после сбора конфигураций.extas.install.<application.name>:<application.name>берётся из опции-aкоманды установки.extas.install: на данном этапе есть возможность подключить собственный установщик для реализации какой-то особенной логики установки пакетов.extas.install.package.<package.name>:<package.name>берётся из конфигурации пакета. На данном этапе можно провести дополнительные операции по установки пакета.extas.install.package: стадия, аналогичная предыдущей.extas.install.section.<section.name>:<section.name>- имя секции в конфигурации. На данном этапе можно провести дополнительные операции по установке секции.extas.install.section: стадия, аналогичная предыдущей.extas.install.section.<section.name>.item: на данном этапе можно провести дополнительные операции по установке конкретного элемента сущности.extas.install.item: стадия, аналогичная предыдущей.
Удаление сущностей
# vendor/bin/extas uninstall(короткая формаextas u)
Для удаления также доступны стадии:
extas.uninstall.<application.name>extas.uninstall.package.<package.name>extas.uninstall.packageextas.uninstall.section.<section.name>extas.uninstall.sectionextas.uninstall.item.<section.name>extas.uninstall.item
Создание и установка пользовательской сущности
-
Создаём класс сущности.
- Создаём репозиторий для сущности.
Из коробки Extas поддерживает MongoDB.
В результате использования данного репозитория, будет создана коллекция my__names.
- Придумываем имя секции для нашей сущности в конфигурации.
Пусть будет my_names.
-
Создаём плагин для установки нашей сущности.
- Добавляем плагин и интерфейс репозитория в нашу конфигурацию для extas'a.
По умолчанию, конфигурация находится в корне в файле с именем extas.json.
Вы можете использовать любое имя - в этом случае не забудьте указать его в флаге -p при установке (см. ниже).
example.json
- Устанавливаем плагин.
# vendor/bin/extas i
All versions of extas-installer with dependencies
symfony/console Version 5.*
jeyroik/extas-console Version 0.*
jeyroik/extas-base Version 2.*
jeyroik/extas-foundation Version 5.*
jeyroik/extas-repositories-fields-uuid Version 0.*
jeyroik/extas-crawlers Version 0.*
jeyroik/extas-commands-options Version 0.*
jeyroik/extas-exceptions Version 0.*