在 freemarker 模板中分配列表
Assigning list in freemarker template
我想从 freemarker 模板创建 json。
我的输出json
{
data : ["123", "234", "346"]
}
所以我有一个列表 inputData: ["123", "234", "346"]。
我想在 .ftl 模板中做类似下面的事情。
<#escape x as x?json_string>
{
"data": "${inputData}"
}
</#escape>
但是出现以下错误
content: Expected a string or something automatically convertible to string (number, date or boolean), but this evaluated to a sequence
嗯,FreeMarker 并不专门用于将数据转储为 JSON 格式,所以有手动方法:
{
"data": [<#list inputData as i>"${i?json_string}"<#sep>, </#list>]
}
当然,如果你经常这样做,那么值得为它写一些 #macro
-s 之类的东西。
我想从 freemarker 模板创建 json。
我的输出json
{
data : ["123", "234", "346"]
}
所以我有一个列表 inputData: ["123", "234", "346"]。 我想在 .ftl 模板中做类似下面的事情。
<#escape x as x?json_string>
{
"data": "${inputData}"
}
</#escape>
但是出现以下错误
content: Expected a string or something automatically convertible to string (number, date or boolean), but this evaluated to a sequence
嗯,FreeMarker 并不专门用于将数据转储为 JSON 格式,所以有手动方法:
{
"data": [<#list inputData as i>"${i?json_string}"<#sep>, </#list>]
}
当然,如果你经常这样做,那么值得为它写一些 #macro
-s 之类的东西。