如何在流体中访问 FileReference 对象的属性
How to access properties of a FileReference Object in fluid
下面是 fluid 中 FileReference 类型对象的调试。在 fluid 中,调试看起来像这样:<f:debug>{fileReference}</f:debug>
问题是如何访问以绿色突出显示的属性,即 width
、height
和 hovertext
。
原始文件是一个图像,因此 width
和 height
是默认的 T3 属性,hovertext
已由我的扩展程序添加了它自己的 getter/setter。
我尝试了以下方法:
{fileReference.width}
{fileReference.mergedProperties.width}
{fileReference.originalResource.width}
到目前为止运气不好,访问 mergedProperties
中的值的正确方法是什么?
非常感谢
弗洛里安
f:debug
显示了类似于var_dump
函数的东西,所以一个对象的属性。在流体中,您只能访问 getter 函数,或者如果它是数组,则只能访问数组的值。因此,如果您编写类似 {fileReference.mergedProperties}
的内容,则方法 getMergedProperties()
将在存在时被调用。
知道您可以查看 sysext/core/Classes/Resource/FileReference.php
文件内部,看看它有什么 getter。我们可以很快找到public function getProperties()
那个returns你标记的合并属性,所以正确的解法应该是这样的:
{fileReference.properties.width}
下面是 fluid 中 FileReference 类型对象的调试。在 fluid 中,调试看起来像这样:<f:debug>{fileReference}</f:debug>
问题是如何访问以绿色突出显示的属性,即 width
、height
和 hovertext
。
原始文件是一个图像,因此 width
和 height
是默认的 T3 属性,hovertext
已由我的扩展程序添加了它自己的 getter/setter。
我尝试了以下方法:
{fileReference.width}
{fileReference.mergedProperties.width}
{fileReference.originalResource.width}
到目前为止运气不好,访问 mergedProperties
中的值的正确方法是什么?
非常感谢
弗洛里安
f:debug
显示了类似于var_dump
函数的东西,所以一个对象的属性。在流体中,您只能访问 getter 函数,或者如果它是数组,则只能访问数组的值。因此,如果您编写类似 {fileReference.mergedProperties}
的内容,则方法 getMergedProperties()
将在存在时被调用。
知道您可以查看 sysext/core/Classes/Resource/FileReference.php
文件内部,看看它有什么 getter。我们可以很快找到public function getProperties()
那个returns你标记的合并属性,所以正确的解法应该是这样的:
{fileReference.properties.width}