TYPO3 Fluid项目-> f:count()选择字段,然后f:widget.paginate

时间:2019-03-21 14:01:39

标签: typo3 fluid typo3-8.x typo3-extensions

我目前有以下问题:

一个项目具有不同的变量,我可以通过TCA中的选择来选择简单变量。现在,使用分页小部件,我只想选择具有此变量1的元素。

当然,如果我在分页中设置一个条件,则它不起作用,因为它会将这些条件计算到这些页面中(这表明比实际存在的页面更多)。

<f:if condition="{items -> f:count()} > 1">
 <f:then>
     <f:widget.paginate objects="{items}" as="paginatedItems" configuration="{itemsPerPage: 10, insertAbove: 0, insertBelow: 0, maximumNumberOfLinks: 10}">
         <f:for each="{paginatedItems}" as="item">
             <f:if condition="{item.variable} == 1">
                <div>.....</div>
            </if>
        </f:for>
    </f:widget.paginate>
</f:then>
<f:else>

1 个答案:

答案 0 :(得分:1)

您需要以这种方式计算子选择上的分页,以便在将项目数组提供给分页viewhelper之前消除所有不需要的记录。

  • 您可以直接从存储库中获得此​​子选择(创建新查询)
  • 或者您将项目数组选择为另一个流体变量,就像ext:news(评估已显示的记录)一样

如果可能的话,我会首选第一种解决方案,因为它的性能应该更好并且也可以扩展。