解析&将已经渲染的Json与带有lift-json的“to-be-rendered”字符串组合在一起

时间:2011-01-19 16:39:39

标签: json scala lift

使用lift-json我有一个Field对象,它呈现自己的Json:

field.json => JsonAST.render(("id" -> id) ~ ("name" -> name))

现在我想将结果与另一个Json String结合起来,但这样做会导致所有Field-values被转义为 解析器解析已经渲染的Json:

JsonAST.render("combined" -> ("other-stuff" ~ getOtherStuff) ~ ("fields" -> field.json))

如何在没有一个部分被字符串转义的情况下合并这些字段?

1 个答案:

答案 0 :(得分:2)

最好将这些片段保存为AST格式,并仅在最后进行渲染。

val json: JValue  = ("id" -> id) ~ ("name" -> name)
val other: JValue = ("foo" -> foo) ~ ("bar" -> bar)

render("combined" -> ("other-stuff" -> other) ~ ("fields" -> json))