Пакет для создания адапторов полей для Extas.
С помощью адапторов полей можно создавать обработчики, которые будут заменять или обогащать значения полей при создании/обновлении extas-совместимых сущностей.
- Создать плагин.
- В плагине реализовать адапторы.
class MyAdaptorPlugin extends \extas\components\repositories\FieldAdaptorPlugin
{
protected function getMarkers()
{
return [
new class () extends \extas\components\repositories\FieldAdaptor {
public function isApplicable(string $value): bool
{
// Проверяем подходит ли значение поля для адаптации.
return $value == 'my';
}
public function apply(string $value)
{
return 'world';
}
}
];
}
}
- Подключить плагин к интересуемой стадии.
В extas.json
:
{
"plugins": [
{
"class": "MyAdaptorPlugin",
"stage": "extas.<entity>.create.before"
}
]
}
В качестве примера можно посмотреть:
- extas-repositories-fields-sha1 позволяет автоматически шифровать значение с помощью sha1.
- extas-repositories-fields-uuid позволяет генерировать uuid-строки для значения полей.