自定义 TYPO3 v10 扩展中缺少列 UID
Column UID missing in custom TYPO3 v10 extension
在将我的 TYPO3 项目从 v7 更新到 v10 时,我的自定义扩展遇到了一些困难。
因此,我只是尝试从官方 TYPO3 网站重建演示扩展:https://docs.typo3.org/m/typo3/book-extbasefluid/10.4/en-us/4-FirstExtension/2-create-folder-structure-and-configuration-files.html 以查看这些年来发生了什么变化。
我按照网站上的说明进行操作。
成功激活扩展后,我浏览到列表视图,但出现以下错误:
Unknown column 'uid' in 'field list'
link to error message
我检查了我的数据库,'uid' 列确实丢失了,'pid' 列存在。
这是我的 ext_tables.sql:
uid int(11) unsigned DEFAULT '0' NOT NULL auto_increment,
pid int(11) DEFAULT '0' NOT NULL,
name varchar(255) DEFAULT '' NOT NULL,
description text NOT NULL,
quantity int(11) DEFAULT '0' NOT NULL,
PRIMARY KEY (uid),
KEY parent (pid)
);
第二次尝试时,我从 https://github.com/TYPO3-Documentation-Examples/store_inventory 复制了整个项目,但仍然遇到同样的错误。
您知道我必须更改什么才能不再收到该错误吗?
删除数据库 table 并重新创建它后,它工作正常。
我记得有过类似的问题,但不记得是什么原因了。
当我遇到问题时,typo3conf/ext 中可能存在相同扩展名(相同扩展名密钥)的其他副本。这可能会导致问题(即使未启用这些扩展)。
除此之外,是否是简单的缓存问题或数据库比较问题?
如果您创建了扩展然后将其激活,应该没问题。但是,如果进行了更改,您可能必须清除系统缓存。在任何情况下,TCA 都会被缓存,因此如果您在那里进行更改,系统缓存应该会被清除。
如果您直接使用 https://github.com/TYPO3-Documentation-Examples/store_inventory,则该扩展适用于 8.7,尚未更新。我目前不能保证它能工作 10。
在将我的 TYPO3 项目从 v7 更新到 v10 时,我的自定义扩展遇到了一些困难。 因此,我只是尝试从官方 TYPO3 网站重建演示扩展:https://docs.typo3.org/m/typo3/book-extbasefluid/10.4/en-us/4-FirstExtension/2-create-folder-structure-and-configuration-files.html 以查看这些年来发生了什么变化。 我按照网站上的说明进行操作。
成功激活扩展后,我浏览到列表视图,但出现以下错误:
Unknown column 'uid' in 'field list' link to error message
我检查了我的数据库,'uid' 列确实丢失了,'pid' 列存在。
这是我的 ext_tables.sql:
uid int(11) unsigned DEFAULT '0' NOT NULL auto_increment,
pid int(11) DEFAULT '0' NOT NULL,
name varchar(255) DEFAULT '' NOT NULL,
description text NOT NULL,
quantity int(11) DEFAULT '0' NOT NULL,
PRIMARY KEY (uid),
KEY parent (pid)
);
第二次尝试时,我从 https://github.com/TYPO3-Documentation-Examples/store_inventory 复制了整个项目,但仍然遇到同样的错误。
您知道我必须更改什么才能不再收到该错误吗?
删除数据库 table 并重新创建它后,它工作正常。
我记得有过类似的问题,但不记得是什么原因了。
当我遇到问题时,typo3conf/ext 中可能存在相同扩展名(相同扩展名密钥)的其他副本。这可能会导致问题(即使未启用这些扩展)。
除此之外,是否是简单的缓存问题或数据库比较问题?
如果您创建了扩展然后将其激活,应该没问题。但是,如果进行了更改,您可能必须清除系统缓存。在任何情况下,TCA 都会被缓存,因此如果您在那里进行更改,系统缓存应该会被清除。
如果您直接使用 https://github.com/TYPO3-Documentation-Examples/store_inventory,则该扩展适用于 8.7,尚未更新。我目前不能保证它能工作 10。