我在 Typo3 Fluid 模板中有一个对象,并且想要访问其上的属性,但该属性的名称在一个变量中someProperty
:
<f:if condition="searchObject.{someProperty}">
Found!
</f:if>
因为这不起作用:是否有通过变量访问属性的内置方法?
你可以给fedex Fluid viewhelper 集合和它的 v:var.get
viewhelper 一个机会。
或者在这里查看其他视图助手。如果您没有找到合适的,您可以根据此处的一些示例为此功能编写自己的。
更新:
由于这是 TYPO3 6.2 的一个老问题,是时候将其更新为当前标准了。(另见克劳斯的回答:
对于当前的 LTS:TYPO3 9.5,您可以使用简单的:
{searchObject.{someProperty}}
在 Fluid 独立版和 TYPO3v8 及更高版本中:
{array.{variableContainingKey}}
.
点符号实际上是访问属性的正确方法。你说的动态是什么意思?可以为空吗?您是否尝试过以下操作?
<f:if condition="<f:count>{searchObject.someProperty}</f:count>">
Found!
</f:if>
或者也许只是:
<f:if condition="{searchObject.someProperty}">
Found!
</f:if>