TYPO3:如何检查记录是新记录还是副本

TYPO3: How to check if a record is new or just a copy

我实现了两个钩子 (processDatamap_afterDatabaseOperations 和 processDatamap_postProcessFieldArray) 来在保存后操作任何记录。

我的问题是: 每次我复制或创建记录时,我都会输入挂钩并获得一个参数 "status",无论该记录实际上是新记录还是只是现有记录的副本,该参数始终为 "new"。 TYPO3 似乎将副本作为新记录处理。

如何检查记录实际上是副本还是新记录? 我目前正在与 TYPO3 Version 8.7.9.

合作

您可以使用t3_origuid

它应该添加到您的 extbase 域模型中。

See here.

处理完"copy"命令后,原始记录的id将被复制到这个字段中。

所以在钩子上: processDatamap_preProcessFieldArrayprocessDatamap_postProcessFieldArray 你可以访问它。

喜欢:

if(isset($fieldArray['t3_origuid']) {
   <your_code>
}