【发布时间】:2021-11-29 15:27:34
【问题描述】:
如何按“date2”排序?也就是说,在附加字段“日期”上?
<#assign
orstf = objectUtil('com.liferay.portal.kernel.dao.orm.RestrictionsFactoryUtil')
qry = assetEntryLocalService.dynamicQuery()
/>
<#if startDate??>
<#assign
V = qry.add(orstf.ge('publishDate', startDate?date("dd.MM.yyyy") ))
/>
</#if>
<#if endDate??>
<#assign
V = qry.add(orstf.le('publishDate', endDate?date("dd.MM.yyyy")))
/>
</#if>
<#assign
entriesRaw = assetEntryLocalService.dynamicQuery(qry)
entries = []
/>
<#-- ?sort_by(['name', 'last']) -->
<#list entriesRaw as entry>
<#assign
eCatIds = entry.getCategoryIds()
renderer = entry.getAssetRenderer()
journalArticle = renderer.getArticle()
date2 = journalArticle.getExpandoBridge().getAttribute("date")
bContains = 0
/>
<#list eCatIds as eCatId>
<#if (catIds?seq_contains(eCatId)) &&
(date2?date >= startDate?date("dd.MM.yyyy")) &&
(date2?date <= endDate?date("dd.MM.yyyy")) >
<#assign bContains = 1 />
</#if>
</#list>
<#if bContains == 1>
<#--
<#assign entry.set />
-->
<#assign entries = entries + [entry] />
</#if>
</#list>
我认为它可能会成功,将其写到资产的某个字段中。而在这种情况下。但是这样也不好,每次都拉数据库
【问题讨论】:
标签: liferay freemarker liferay-6.2