我将此代码用于一个简单的下载链接(只有当“附件”字段具有值-一个附件)-(工作正常)时,才会出现:
<metal:field use-macro="python:here.widget('attachment', mode='view')" />我还想提供一种直接查看文件而不下载的方法。我目前正在使用这个代码片段(工作正常):
<a tal:attributes="href string:${context/absolute_url}/attachment">View Attached File</a>我想添加一个条件,如果‘附件’字段实际上有一个附件,那么显示“视图”链接。然而,我无法得到水龙头:条件工作。在测试过程中,我尝试了以下代码片段:
<span tal:condition="here/attachment">ATTACHMENT</span>
<span tal:condition="context/attachment">ATTACHMENT</span>
<span tal:condition="template/attachment">ATTACHMENT</span>
<span tal:condition="exists:template/attachment">ATTACHMENT</span>
<span tal:condition="string:${context/absolute_url}/attachment">ATTACHMENT</span>
<span tal:condition="python:here.widget('attachment', mode='view')">ATTACHMENT</span>
<span tal:condition="exists:python:here.widget('attachment', mode='view')">ATTACHMENT</span>
<span tal:define="file_exists2 exists:string:${context/absolute_url}/attachment" tal:condition="python:file_exists2">ATTACHMENT</span>(不论附件是否存在,上述显示)
是否有一个简单的解决方案,允许一个tal:条件来准确地识别一个文件字段是否有值,而不显示在没有附件的情况下,并在它存在时显示?
发布于 2016-02-26 15:55:54
您可以检查附件大小:
如果它是一个原型(在AT字段上调用getSize,它也是公共可遍历的):
<span tal:condition="context/attachment/getSize">ATTACHMENT</span>DX上的AFAIK是不同的,因为它是一个NamedBlobFile
<span tal:condition="context/attachment/get_size">ATTACHMENT</span>https://stackoverflow.com/questions/35654213
复制相似问题