【问题标题】:Scala collection of strings - a way to output strings without double quotesScala 字符串集合 - 一种输出不带双引号的字符串的方法
【发布时间】:2014-06-01 12:56:22
【问题描述】:

我有一个字符串集合。

当我遍历集合(使用 .map())输出值时,字符串“Lipsum”会用双引号输出

Scala 类内部:

case class Container(id: Int, name: String, url: String)
val tags = (i \\ "tags").flatMap{
    tag =>
        tag.as[JsArray].value.map {
            element => Container(element \ "id", element \ "name", element \ "url")
        }
}

模板内:

<div class="item">
    @tags.element.map { item =>
        @item.name
    }
</div>

集合输出( println(item.name) ):

List(Container(1957,"Lipsum","/lipsum"))

当前字符串的输出如下所示:

<div class="item">
"Lipsum"
</div>

所需的输出:

<div class="item">
Lipsum
</div>

如何去掉双引号?

谢谢

【问题讨论】:

    标签: html scala playframework-2.0


    【解决方案1】:

    element \ "name" 给你一个 JsValue。 JsString.toString 将添加双引号。

    我很惊讶 Container(element \ "id", element \ "name", element \ "url") 可以编译,但这应该可以:

    Container(element \ "id", (element \ "name").as[String], (element \ "url").as[String])
    

    【讨论】:

    • 谢谢大佬,(element \ "name") 已经返回 play.api.libs.json.JsString
    猜你喜欢
    • 1970-01-01
    • 2017-08-21
    • 2014-10-27
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2014-09-26
    相关资源
    最近更新 更多