自1.5天以来,我一直在处理一个问题。
我有一个TYPO3动作控制器,应该在删除产品对象后创建一个新的控制器。
要实现过滤器,我正在使用sys_category。我尝试了几种查询sys_category表以获取将类别附加到产品对象的标题的方法,但是我只收到错误消息。
我的控制器如下所示(仅相关部分):
/**
* categoryRepository
*
* @var \TYPO3\CMS\Extbase\Domain\Repository\CategoryRepository
* @Inject
*/
protected $categoryRepository = null;
public function updateProductByUuid($uuid)
{
$objectManager = GeneralUtility::makeInstance('TYPO3\CMS\Extbase\Object\ObjectManager');
$productRepository = $objectManager->get('MyVendor\\Ext\\Domain\\Repository\\ProductRepository');
$variantRepository = $objectManager->get('MyVendor\\Ext\\Domain\\Repository\\VariantRepository');
$categoryRepository = $objectManager->get('TYPO3\\CMS\\Extbase\\Domain\\Repository\\CategoryRepository');
$persistenceManager = $objectManager->get('TYPO3\\CMS\\Extbase\\Persistence\\Generic\\PersistenceManager');
...
$categories = $categoryRepository->findByTitle('microphones');
foreach ($categories as $category) {
var_dump($category->getUid());
我从TYPO3收到以下错误:
(1/1)#1472074485 TYPO3 \ CMS \ Extbase \ Persistence \ Generic \ Storage \ Exception \ SqlErrorException 表'database.tx_extbase_domain_model_category'不存在
我还映射了setup.txt中的表:
config.tx_extbase {
persistence {
classes {
TYPO3\CMS\Extbase\Domain\Model\Category {
mapping {
tableName = sys_category
}
}
}
}
我也这样尝试过:
https://gist.github.com/iamandrewluca/7b9a7a3d5463f6f27f668eb2fcdda1ad
但没有成功。
我仔细检查了所有名称空间等。foreach循环一开始,错误似乎就会出现。任何提示或帮助都将受到赞赏。