我正在 Liferay 6.1 中试验动态数据列表。数据定义和列表编辑器工作正常,但我无法准备模板来显示列表。特别是我想知道如何实现显示的排序和分页,因为列表最终会变得很长。
让我们从订购开始。理论上,下面的模板应该使用允许 OrderByComparator ( http://bit.ly/MqsGNE ) 的 getRecords 方法,但是工厂在哪里,可以让我创建所需的比较器?
#set ($ddlRecordsUtil = $serviceLocator.findService("com.liferay.portlet.dynamicdatalists.service.DDLRecordLocalService"))
#set ($recordSetId = $getterUtil.getLong($reserved_record_set_id.data))
## How to create an OrderByComparator which would ORDER_BY_text2132_DESC ??
#set ($orderBy = ???????????)
#set ($records = ${ddlRecordsUtil.getRecords($recordSetId,-1,-1,50, $orderBy)})
<ul>
#foreach ($record in $records)
#set ($name = $record.getField("text2132").getValue())
<li><em>${name}</em></li>
#end
</ul>
我是否遗漏了什么,是否有另一种方法可以在从数据库中获取这些列表之前对其进行排序?