You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Velocity中如何从数组内的Map中获取值

Velocity嵌套循环实现用户事件列表格式化输出

你需要在遍历用户的外层循环内部,嵌套一个遍历该用户事件的内层#foreach循环,同时对事件类型做大写转换,就能实现目标格式。以下是修正后的代码:

#foreach($person in $persArray)##
  User: $person.userId<br/>
  #foreach($event in $person.events)##
    $event.eventType.toUpperCase(): $event.eventTitle<br/>
  #end##
  <p></p>
#end##

关键说明:

  • 嵌套循环逻辑:在外层遍历用户的循环里,直接通过$person.events获取当前用户的事件数组,用内层#foreach逐个遍历事件对象。
  • 事件类型大写处理:使用Velocity字符串方法toUpperCase()将eventType从小写转为大写,匹配你需要的输出格式。
  • 格式调整:去掉原来的Events: $person.events,直接输出每个事件的具体内容,用<br/>实现换行分隔。

如果之前嵌套循环失败,大概率是以下原因:

  • 事件数组的属性名拼写错误(比如写成event而非events)
  • 内层循环变量名和外层冲突(比如都用$item)
  • 没有正确访问事件对象的属性(比如写成$event.title而非$event.eventTitle)

内容的提问来源于stack exchange,提问作者Mefiant

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.06 11:30:00