添加掩码元素后,TYPO3 MASK缺少TCA条目

时间:2019-06-25 10:23:00

标签: typo3 typo3-7.6.x typo3-extensions typo3-tca tx-mask

我有一个使用TYPO3 7.6.31,扩展掩码2.1.1以及自定义内容的已在工作的mask元素的工作站点。

我试图添加一个新的mask元素,其中包含一个重复元素(还尝试了content-element和其他元素)(已经使用),该元素填充了两个文本字段。

第二次,我保存了新内容元素,上面写着“成功添加...”,然后我可以返回元素概述,在这里我也可以找到我新创建的元素。例如,一旦我到达登录页面,与掩码扩展名相关的所有内容都会引发令人讨厌的错误。

在检查日志后,我收到此错误消息:

[ALERT] request="x" component="TYPO3.CMS.Frontend.ContentObject.Exception.ProductionExceptionHandler": Oops, an error occurred! Code: 201906251014509abc80c7 - {"exception":"InvalidArgumentException: There is no entry in the $TCA array for the table \"tx_mask_ytfieldkey\". This means that the function enableFields() is called with an invalid table name as argument. in \/data\/typo3relaunch\/typo3_src-7.6.31\/typo3\/sysext\/frontend\/Classes\/Page\/PageRepository.php:1203

我登录mysql客户端并检查了该表,该表已经存在且具有所有需要的结构,而没有任何数据库更新-所以我想内部屏蔽了该句柄-不错,但现在卡在该表的丢失的TCA条目中并且不知道将其放置在哪里-也应该不用面具处理吗?

由于这个原因,我被困住了,现在无法创建新的内容元素-关于如何解决该问题或在表中放置该TCA条目的任何想法?

编辑: PageRepository中的检查如下所示:

if (isset($GLOBALS['TCA'][$table]) && is_array($GLOBALS['TCA'][$table]) && $uid > 0) {

因此该表的条目实际上完全缺失了

编辑:

mask扩展应该在这里处理内容元素的TCA条目:(mask / ext_tables.php)

$tcaCodeGenerator = \TYPO3\CMS\Core\Utility\GeneralUtility::makeInstance('MASK\\Mask\\CodeGenerator\\TcaCodeGenerator');

// Generate TCA for Content-Elements
$contentColumns = $tcaCodeGenerator->generateFieldsTca($configuration["tt_content"]["tca"]);
\TYPO3\CMS\Core\Utility\ExtensionManagementUtility::addTCAcolumns('tt_content', $contentColumns);
$tcaCodeGenerator->setElementsTca($configuration["tt_content"]["elements"]);

// Generate TCA for Pages
$pagesColumns = $tcaCodeGenerator->generateFieldsTca($configuration["pages"]["tca"]);
\TYPO3\CMS\Core\Utility\ExtensionManagementUtility::addTCAcolumns('pages', $pagesColumns);
\TYPO3\CMS\Core\Utility\ExtensionManagementUtility::addTCAcolumns('pages_language_overlay', $pagesColumns);
$tcaCodeGenerator->setPageTca($configuration["pages"]["tca"]);

// Generate TCA for Inline-Fields
$tcaCodeGenerator->setInlineTca($configuration);

所以我想我不必在该过程中手动执行任何操作。

编辑:

对于TYPO3 7.6.31和mask 2.1.1仍然没有解决方案-目前,我们正在计划所有客户要求的更新版本...

0 个答案:

没有答案