我尝试在自定义扩展名的tt_content表中添加一个自定义字段。我在ext_tables.sql中添加了Create table语句,并在自定义内容元素TCA中注册了该字段。
但是当我激活扩展名时,tt_content中没有添加任何额外的字段。 没人会导致我出错或提示要看的地方。
据我所知,在激活扩展时,扩展管理器会自动执行ext_tables.sql中的语句。
系统为TYPO3 8.7.17。
TYPO3中的绝对初学者。谢谢大家...
// ext_tables.sql
CREATE TABLE tt_content (
tx_ug_content_ext_tab_item int(11) unsigned DEFAULT '0',
);
// content element TCA file
/***************
* Register fields
*/
$GLOBALS['TCA']['tt_content']['columns'] = array_replace_recursive(
$GLOBALS['TCA']['tt_content']['columns'],
[
'tx_ug_content_ext_tab_item' => [
'label' => 'LLL:EXT:ug_content/Resources/Private/Language/Backend.xlf:ext_tab_item',
'config' => [
'type' => 'inline',
'foreign_table' => 'tx_ug_content_ext_tab_item',
'foreign_field' => 'tt_content',
'appearance' => [
'useSortable' => true,
'showSynchronizationLink' => true,
'showAllLocalizationLink' => true,
'showPossibleLocalizationRecords' => true,
'showRemovedLocalizationRecords' => false,
'expandSingle' => true,
'enabledControls' => [
'localize' => true,
]
],
'behaviour' => [
'mode' => 'select',
'localizeChildrenAtParentLocalization' => true,
]
]
]
]
);
找到解决方案,CREATE和TABLE之间有两个空格。 西蒙·吉利(Simon Gilli)发现了错误。
答案 0 :(得分:0)
#1064 - You have an error in your SQL syntax;
check the manual that corresponds to your MySQL server version
for the right syntax to use near ')' at line 3
或者换句话说:在字段定义后删除逗号,以避免该SQL错误。