所以我目前正在将 TYPO3 网站从 v11 更新到 v12,并且遇到了一个似乎无法修复的问题。在我的流体模板中,我使用 AJAX 生成过滤器表单。为此,我将 AJAX PageType 分配给表单。由于我设置的数字在多个地方使用,因此我为其定义了一个常量。
自从更新到 TYPO3 12 以来,我收到以下错误:
TYPO3\CMS\Extbase\Mvc\Web\Routing\UriBuilder::setTargetPageType(): Argument #1 ($targetPageType) must be of type int, string given
这是我的代码的一部分:
HTML
<f:form action="list" method="GET" name="overwriteDemand" pageType="{settings.tx_t8_references_ajaxpage}">
TypoScript 常量
plugin.tx_t8references {
ajaxPage = 427592
}
TypoScript 设置
plugin.tx_t8references {
settings {
tx_t8_references_ajaxpage = {$plugin.tx_t8references.ajaxPage}
}
}
这是我使用
<f:debug>{settings.tx_t8_references_ajaxpage}</f:debug>
时得到的输出:如何才能使我设置的常量为整数类型?
感谢您的帮助,提前谢谢您。
这已被报告为问题,请参阅 https://forge.typo3.org/issues/100338 并已修复。我猜你用的不是最新版本?
正如上面评论中提到的。这是 FormViewHelper 中的一个错误。在错误修复之前,您可以执行以下操作:
EXT:vhs 附带一个转换 ViewHelper。
如果您不想安装 vhs,您可以将 ViewHelper 复制到您自己的扩展中。