Skip to content

Chirontex/partitura

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Partitura

Собственная CMS, на которой я потом сделаю свой блог.

Почему так?

  1. Это полезно.
  2. Нет желания делать свой блог на готовых (чужих) CMS.

Установка

Быстрое создание dev-среды в docker-контейнере

  1. Создать форк этого репозитория.
  2. Создать пустую директорию (например, /partitura) и клонировать в неё репозиторий: git clone https://github.com/<username>/partitura /partitura.
  3. Создать файл /partitura/git-clone.sh следующего вида:
git config --global user.name <name>
git config --global user.email <email>
git clone https://<username>:<personal_access_token>@github.com/<username>/partitura /www
  1. Скопировать файл /partitura/app/.env-example в /partitura/.env и указать секретные данные.
  2. Выполнить команды:
docker build -t <name>/partitura:latest .
docker run --rm -it -p 80:80/tcp -p 3306:3306/tcp -p 9003:9003/tcp <name>/partitura:latest

Проброс портов можно варьировать в зависимости от ваших технических возможностей и предпочтений.

  1. Добавить в файл hosts следующую запить:
127.0.0.1 partitura.loc

Клиентская часть CMS будет доступна по указанному выше адресу.

После этого можно подключаться к docker-контейнеру.

Команды CLI

Создание пользователя

Команда: app/bin/console partitura:user:create <username> <password> [role]

Роль обозначается кодом роли (значение поля CODE в таблице pt_roles). Если не задано, то будет использоваться по умолчанию ROLE_USER.

Смена пароля пользователя

Команда: app/bin/console partitura:user:change-password <username> <password>

В качестве значения аргумента password передаётся новый пароль.

Команды Composer

PHP-CS-FIXER

Команда:

cd app
composer php-cs-fix

Исправит стиль во всей директории src.

PHPStan

Команда:

cd app
composer phpstan-analyse

Анализирует директорию src.

Конвертация аргументов запроса

Контроллеры

  1. Определить DTO запроса, прописать атрибуты JMS Serializer для его свойств.
  2. Определить наследника Partitura\Factory\RequestDto\AbstractRequestDtoFactory. Метод getDtoClass() должен возвращать полное имя ранее определённого DTO.

Теперь можно указывать ранее определённый DTO как аргумент в экшне контроллера.

About

My own CMS based on Symfony framework.

Topics

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published