我正在做一些关于速度模板语法的简要阅读。具体来说,我试图创建由模板引擎有条件地呈现的内容。更确切地说,我希望检查Confluence实例中的用户权限组,返回一个组名数组,然后根据他们需要使用当前权限级别访问的内容(例如菜单项)有条件地呈现内容。
我读到没有"#break“指令,这在我看来很可笑,所以我开始在我的模板代码中测试"#break”的用法。我最后得到的结果是:
#foreach ($group in $groupList)
#if (
$group == "administrators" ||
$group == "group-1" ||
$group == "group-2" ||
$group == "group-3" ||
$group == "group-4" ||
$group == "group-5" ||
$group == "group-6"
)
<a href='<redacted link>'><li data-balloon-length="fit" data-balloon="View
your agreements with us, e.g. your customer agreement, or our SLA's" data-
balloon-pos="down">
<i class="fas fa-shower"></i>
<p>
Hygiene
</p>
</li></a>
#break
#else
<a href='<redacted link>'><li class="no-permissions" data-balloon-length="fit"
data-balloon="You have insufficient privileges to view this page" data-
balloon-pos="down">
<i class="fas fa-shower"></i>
<p>
Hygiene
</p>
</li></a>
#break
#end
#end我非常新的速度模板,最近的几个月的实践。我认为能够有条件地呈现内容有一些巨大的优势,例如,可以使用JS或jQuery进行后置处理。
我的问题是,我做得对吗?因为据我所读,#break并不存在(可能是我找到的旧文档,不确定)。
此外,一个直接的问题是,Apache流速模板中是否存在#break指令?
我想指出的是,这段代码的测试最少,正确识别的任何组都不是特定的顺序,它只呈现一个列表项或另一个列表项,而不管组的顺序如何。
很抱歉有个问题的论文!事先谢谢你的意见。
发布于 2018-08-20 12:00:24
速度1.6中引入了#break指令。
检查不同版本的文档很容易。
https://stackoverflow.com/questions/51727376
复制相似问题