在创建新的数据库记录时,TYPO3会为它们分配一个临时UID,如下所示:NEW56fe740dd5a455.64167468.当记录插入数据库时,记录会获得真正的UID.
在上面的钩子中,记录已经插入到数据库中,因此它已分配了一个数字uid.如何从给定的临时UID中获取该uid?
Jos*_*ost 10
好的,找到了.hook-method的第四个参数是datahandler对象,它具有一个属性substNEWwithIDs,一个关联数组,将临时UID映射到真实的UID.
人们可以像这样使用它:
public function processDatamap_afterDatabaseOperations($action, $table, $uid, $datahandler)
{
if (GeneralUtility::isFirstPartOfStr($uid, 'NEW')) {
$uid = $datahandler->substNEWwithIDs[$uid];
}
// Do something with the UID
}
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
1025 次 |
| 最近记录: |