在extbase端,一个类可以扩展TYPO3\CMS\Extbase\DomainObject\AbstractValueObject
。但是我无法弄清楚如何在TCA-Konfiguration和ext_tables.sql
中实现值对象。实施IRRE的奖励积分。
值对象没有真正的“ uid”,但由其所有属性定义。一个示例可以是“ rgb-color”,它是由值r,g和b组合定义/唯一的。
所以我想像一下,当用户向父记录中添加值255 0 0的类型为“ rgb-color”的值对象时,应该发生以下情况:
tx_extkey_domain_model_rgbcolor
中没有存储值255 0 0的值对象的条目,则将创建一个并将其分配给父记录(可能通过mm表)tx_extkey_domain_model_rgbcolor
中创建新条目,但是将使用已经存在的条目我找不到任何有关在TYPO3中实际实现值对象的有用资源。我发现这篇文章解释了实体和值对象之间的区别:
我什至在TYPO3源代码中搜索了扩展AbstractValueObject
的类及其对应的TCA配置,但是找不到任何东西。
我对此感兴趣,因为我认为这可能在查询许多父对象时会对性能产生积极影响。
任何帮助,指向教程或更好的文档的链接都将有所帮助。我也不太确定值对象是否真的是TYPO3扩展的对象。