2016-01-13 71 views
1

我正在爲Freemarker中的Liferay(6.2 GA5)中的資源發佈者編寫應用程序顯示模板,並且我想顯示作者和創建日期。前一段時間,我需要相同的變量爲一個模板,我找不到匹配的速度變量: $reserved-article-author-name & $reserved-article-create-date.dataLiferay應用程序顯示模板 - 獲取Velocity veriables

要使用FreeMarker的速度變量,我打電話給他們這樣的:${.vars['reserved-article-author-name'].data}

在我的模板,它的工作原理罰款,在我的ADT,它拋出一個錯誤:

Expression .vars['reserved-article-author-name'] is undefined

你怎麼弄到這些變量在我的ADT工作或有另一種方式來獲得這些信息?

感謝您的幫助! :)

+0

請注意,由於FreeMarker 2.3.22,您可以編寫'reserved \ -article \ -author \ -name'而不是'.vars ['reserved-article-author-name']''。雖然我不確定哪個Liferay版本帶有2.3.22+。 – ddekany

回答

0

這些「保留的文章」變量只在處理Web內容模板時設置。

通過ADT,您可以更精細地訪問顯示的資產,但必須使用不同的訪問方式,因爲這些保留變量不可用。資產具有您可以訪問的通用元數據集(名稱,日期,標題等)。對於您的示例,代碼將是:

<#if entries?has_content> 
    <#list entries as curEntry> 
     Title: ${curEntry.getTitle(locale)} 
     Create Date: ${curEntry.createDate?date} 
     Author: ${curEntry.userName} 
    </#list> 
</#if> 

看看這個Rich Summary for Asset Publisher,看看如何爲特定資產類型(博客,wiki等)訪問元數據。

相關問題