TYPO3 - конфигурация TCA, IRRE и базы данных для объектов-значений - PullRequest
0 голосов
/ 05 октября 2018

На стороне extbase класс может расширяться TYPO3\CMS\Extbase\DomainObject\AbstractValueObject.Но я не могу понять, как реализовать объект значения внутри TCA-Konfiguration и ext_tables.sql.Бонусные баллы за реализацию IRRE.

Объект-значение не имеет реального uid, но определяется всеми его свойствами.Примером может быть «rgb-color», который определяется / уникален комбинацией его значений r, g и b.

Итак, я представляю, что когда пользователь добавляет объект значения типа "rgb-color" со значениями 255 0 0 в родительскую запись, должно произойти что-то подобное:

  • Еслинет записи для объекта значения со значениями 255 0 0, хранящегося в таблице базы данных tx_extkey_domain_model_rgbcolor, он будет создан, и он будет присвоен родительской записи (возможно, через таблицу mm)
  • Если теперь другойПользователь также добавляет цвет со значениями 255 0 0 в другую родительскую запись, новая запись не будет создана в tx_extkey_domain_model_rgbcolor, но будет использоваться уже существующая

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

https://docs.typo3.org/typo3cms/ExtbaseFluidBook/latest/2-BasicPrinciples/2-Domain-Driven-Design.html#to-model-the-domain

Я даже искал исходный код TYPO3 для классов, расширяющих AbstractValueObject и их соответствующую конфигурацию TCA, но не смог 'ничего не найти.

Мне это интересно, потому что я думаю, что это может оказать положительное влияние на производительность при запросе многих родительских объектов.


Любая помощь, ссылки на учебникиили лучшая документация поможет.Я также не совсем уверен, являются ли объекты-значения действительно полезными для расширений TYPO3.

...