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

时间:2018-01-29 08:07:36

标签: copy typo3 hook

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

我的问题是: 每次复制或创建记录时,我都会进入钩子并获得参数" status"这总是"新"无论记录是新的还是现有记录的副本。 似乎TYPO3将副本作为新记录处理。

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

1 个答案:

答案 0 :(得分:2)

您可以使用 t3_origuid

应将其添加到您的extbase域模型中。

See here.

处理"复制"命令将原始记录的id复制到该字段中。

所以在钩子里: 您可以访问 processDatamap_preProcessFieldArray processDatamap_postProcessFieldArray

像:

static double[] array_product(double[] a, double[] b) {
    int n = a.length - b.length + 1;
    double[] result = new double[n];

    for (int i = 0; i < n; ++i) {
        for (int j = 0; j < b.length; ++j) {
            result[i] += a[i + j] * b[j];
        }
    }

    return result;
}

public static void main(String[] args) {
    double[] array1 = new double[]  {1, 2, 3, 4};
    double[] array2 = new double[] {10, 20};
    double[] result = array_product(array1, array2);

    System.out.print(Arrays.toString(result));
}