擅长:python、mysql、java
<p>公认的答案是非常完美的,但是这里有一个额外的提示来说明它是如何工作的:</p>
<p>/@@images上下文可用于任何对象类型,但第一个参数刻度.刻度()是一个必须在该上下文中使用.getField(name)获取的字段名。</p>
<p>例如,如果您有一个gallery视图,其中显示了view/images上的图像列表,则可以使用:</p>
<pre><code><li tal:repeat="image view/images">
<img tal:define="scales image/@@images;
img python: scales.scale('image', width=100, height=100);"
tal:attributes="src img/url">
</li>
</code></pre>
<p>请特别注意,不能仅将映像实例作为:</p>
^{pr2}$
<p>如果由于某种原因,您需要使用一种语言而不是TAL来执行此操作,那么技巧是使用restrictedTraverse()来获取“@@images”上下文,类似于:</p>
^{3}$