gpt4 book ai didi

templates - 在模板中使用空对象,如何避免 NullPointerException?

转载 作者:行者123 更新时间:2023-12-04 14:48:12 25 4
gpt4 key购买 nike

在 Play 1.2 中,我通常会做类似 ${myobj?.item?.subitem} 的事情。

我在 Play 2.0 中试过这个,但没有任何运气。有没有可能的替代方案?

最佳答案

编辑:对不起,我认为我没有忠实地翻译这个,而且它更难看。 myobj.item 也可以为 null,因此您必须将其包装在 Option(_) 中:

@Option(myobj).flatMap(i => Option(i.item)).flatMap(s => Option(s.subitem)).getOrElse("empty")

@((for {o <- Option(myobj)
item <- Option(o.item)
subitem <- Option(item.subitem)
}).getOrElse("empty"))

请注意确定 playframework 是否对这种常见情况有一些额外的好处。

关于templates - 在模板中使用空对象,如何避免 NullPointerException?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10298069/

25 4 0