【问题标题】:Access entity within Lift Scala net.liftweb.util.Box objectLift Scala net.liftweb.util.Box 对象中的访问实体
【发布时间】:2011-09-27 00:52:18
【问题描述】:

我有一个 net.liftweb.util.Box 对象,它是作为用户 ID 搜索的结果返回的。 box 对象返回如下内容:

net.liftweb.util.Box[MyEntity{attributes}]

如何访问 Box 中的实体?特别是,我想访问框内实体的属性。

【问题讨论】:

    标签: scala scala-2.8 lift


    【解决方案1】:

    请看http://lift.la/scala-option-lift-box-and-how-to-make-your-co

    您可以在 foreach/map 方法调用中访问 Box 的内容。例如,如果您想从实体中获取名称:

    myBoxedEntity.map(_.name) openOr "No Name Provided"
    

    如果 Box 已满,您将获得实体名称,否则您将收到消息。

    【讨论】:

    • 如何拆箱一个完整的对象,而不仅仅是一个字段。例如,您想根据返回对象的字段创建一个新的任意对象。
    【解决方案2】:

    如果你想对 box dmap 上的对象执行一些操作是有帮助的。

    例如:

    fooBox.dmap("Yo!")(foo => 
      // dome some staff with foo 
      result // must be string
    )
    

    你可以直接调用fooBox.open_来获取元素!但不推荐。当box为空时,经常会引发空指针异常。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多