我们公司已经开始使用Confluence wiki 作为我们团队的文档站点,并且我们正在实现一个名为PocketQuery的宏。
此宏将 SQL 数据动态地拉入站点(我们正在拉取站点联系人等信息)。
它使用速度模板来显示它的数据,但是在进行简单的数组索引时我遇到了问题。
编码:
#set ( $page = $additionalParams.get('Page') )
#set ( $pages = "" )
#if ( $page != $null && $page != "" )
#set ( $pages = $page.split(";") )
#else
#set ( $pages = [] )
#end
这$additionalParams
是一个在模板外初始化的列表,包含传递给宏的参数,在这种情况下:
页面=站点名称;服务器
我试图设置的代码是Name;Server
从$additionalParams
列表中提取值,如果它不为空,则拆分该值,然后获取第一个值。
我努力了:
$pages.get(1)
$pages[1]
但是没有任何值被拉取(我也尝试将零作为索引 - 相同的结果)。
遍历这个数组并打印每个条目确实有效 - 这意味着那里有值。
我想做的就是索引到数组中-无论如何似乎都无法挖掘。
可以将其转换为列表,以便可以使用该$pages.get
方法对其进行索引吗?
扩展它会让我使用$pages.contains
方法吗?
Confluence 使用的是 Velocity 1.6。
编辑:
此页面和此页面上的解决方案不起作用 - 我猜测(疯狂地)可能正确的对象不在模板使用它们的上下文中?
(PocketQuery 或 Confluence 会这样做吗?)
我将如何使用“ListTool”?