我想在我的扩展中使用现有的表 . 该表仅用于只读模式 . 实际上我的扩展只会使用两个字段:uid和title .
扩展构建器将tx_extbase_type字段添加到此表 . 我不会在此表中存储任何数据,并且必须处理表中已存在的数据 .
所以问题是:我如何配置TCA来使用这个表?
这是处理此表的ext_tables.php块 . 已删除tx_extbase_type-field的定义 .
$tmp_myext_columns = array(
'title' => array(
'exclude' => 0,
'label' => 'LLL:EXT:myext/Resources/Private/Language/locallang_db.xlf:tx_myext_domain_model_targettable.title',
'config' => array(
'type' => 'input',
'size' => 30,
'eval' => 'trim,required'
),
),
);
\TYPO3\CMS\Core\Utility\ExtensionManagementUtility::addTCAcolumns('tx_someext_domain_model_targettable',$tmp_myext_columns);
$GLOBALS['TCA']['tx_someext_domain_model_targettable']['types']['Tx_MyExt_TargetTable']['showitem'] = $TCA['tx_someext_domain_model_targettable']['types']['1']['showitem'];
$GLOBALS['TCA']['tx_someext_domain_model_targettable']['types']['Tx_MyExt_TargetTable']['showitem'] .= ',--div--;LLL:EXT:myext/Resources/Private/Language/locallang_db.xlf:tx_myext_domain_model_targettable,';
$GLOBALS['TCA']['tx_someext_domain_model_targettable']['types']['Tx_MyExt_TargetTable']['showitem'] .= 'title';
--> $GLOBALS['TCA']['tx_someext_domain_model_targettable']['columns'][$TCA['tx_someext_domain_model_targettable']['ctrl']['type']]['config']['items'][] = array('LLL:EXT:myext/Resources/Private/Language/locallang_db.xlf:tx_someext_domain_model_targettable.tx_extbase_type.Tx_MyExt_TargetTable','Tx_MyExt_TargetTable');
\TYPO3\CMS\Core\Utility\ExtensionManagementUtility::addToAllTCAtypes('tx_someext_domain_model_targettable', $GLOBALS['TCA']['tx_someext_domain_model_targettable']['ctrl']['type'],'','after:' . $TCA['tx_someext_domain_model_targettable']['ctrl']['label']);
我试图删除标有 ---> (包含 tx_extbase_type -field)的行 . 在这种情况下, repository->findAll()
总是给我带空字符串而不是真实 Headers 的记录 . 虽然查询结果中的记录数及其ID是正确的!
我正在使用TYPO3 CMS 6.2.19
提前致谢!
1 回答
您错过了必须通过typoscript将模型映射到现有表格的部分(我建议您将其放在setup.txt中):
干杯,奥利维尔