gpt4 book ai didi

typo3 - 如何从 TYPO3 extbase 中的模型类名获取表名?

转载 作者:行者123 更新时间:2023-12-02 06:13:57 25 4
gpt4 key购买 nike

从特定对象获取表名的最佳方法是什么?有没有类似的东西:

$tableName = Utility::doSomeMagic($object);

这样你就可以从 Vendor\Extkey\Domain\Model\MyObject 得到 tx_extkey_domain_model_myobject。

最佳答案

您可以使用 DataMapper 获取模型的表名。存储库在内部使用它(至少间接地)来告诉他们正在处理什么。您可以获得 DataMapper 的实例并像这样使用它:

$className = \MyVendor\MyExt\Domain\Model\SomeModel::class;
$dataMapper = \TYPO3\CMS\Core\Utility\GeneralUtility::makeInstance(\TYPO3\CMS\Extbase\Persistence\Generic\Mapper\DataMapper::class);
$tableName = $dataMapper->getDataMap($className)->getTableName();

查看 this github repository 中的 SqlDebuggerUtility ,它使用 DataMapper 获取 QueryResult 对象的表名来调试 SQL 语句。

关于typo3 - 如何从 TYPO3 extbase 中的模型类名获取表名?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45859185/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com