我关注了Creating an Extbase extension'在TYPO3文档中并构建产品概述,一切正常。
下一步教导' Extending an Extbase extension'并且这也有效但最后一步改变了TCA以便选择存储的类别,而不是将它们添加到内联...
列表显示了创建的类别的选择可能性,我可以选择它们但不保存,如果我检查数据库类别已保存但它没有显示在后端,并且typo3无法识别类别保存在现场......
任何人都可以给出使其工作所需的最终步骤...(我已经安装,卸载,清除缓存,使用安装工具等多次清理......)
这是我的tca:
/* original working inline code
'categories' => [
'exclude' => 1,
'label' => 'LLL:EXT:productoverview/Resources/Private/Language/locallang_db.xlf:tx_productoverview_domain_model_product.categories',
'config' => [
'type' => 'inline',
'foreign_table' => 'tx_productoverview_domain_model_category',
'foreign_field' => 'product',
'maxitems' => 9999,
'appearance' => [
'collapseAll' => 0,
'levelLinksPosition' => 'top',
'showSynchronizationLink' => 1,
'showPossibleLocalizationRecords' => 1,
'showAllLocalizationLink' => 1
],
],
],
suggested category selection */
'categories' => [
'exclude' => 0,
'label' => 'LLL:EXT:productoverview/Resources/Private/Language/locallang_db.xml:tx_productoverview_domain_model_product.categories',
'config' => [
'type' => 'select',
'renderType' => 'selectMultipleSideBySide',
'foreign_table' => 'tx_productoverview_domain_model_category',
'foreign_field' => 'product',
'maxitems' => 9999,
],
],
],
];
更新:我发现this answer of 2 years之前在v7.6.14中给出了错误,但解释了很多,我仍然希望在这里有一个更简单的答案......
答案 0 :(得分:1)
几天前我在更新旧项目时遇到了同样的问题。解决这个问题的方法是除了type = select:https://docs.typo3.org/typo3cms/TCAReference/Reference/Columns/Select/Index.html#rendertype
之外还要定义一个renderType答案 1 :(得分:1)
我确实尝试过j4k3的解决方案(因为其他经验丰富的开发人员也提到了它)但是我无法让它在我的localhost上工作并且从未发现原因(仍然对此感兴趣,我在Windows 7专业版上运行xampp)
最终我找到了一个对我有用的解决方案非常简单: 在当前的扩展程序构建器中,您可以选择从选择列表中选择关系类型,
我把它(从未在ExtbaseGuide中提到)留给1:n,因为这是实际需要的关系,但现在我使用m:n并且我的麻烦消失了,构建器会自动创建一个额外的MM关系表并且完整TCA代码,它在构建器保存扩展后直接工作......