Playframework 2.0 在play框架模板中使用getOrElse
我的play 2模板中有一个选项[产品] 对产品的定义是“价格” 我如何首先检查选项是否为某些(p),然后访问价格Playframework 2.0 在play框架模板中使用getOrElse,playframework-2.0,playframework-2.2,Playframework 2.0,Playframework 2.2,我的play 2模板中有一个选项[产品] 对产品的定义是“价格” 我如何首先检查选项是否为某些(p),然后访问价格 @myproduct.price // <- This obviously fails because myproduct is an Option[Product] @myproduct.getOrElse("not found").price // <- this does not work because price is not defined on th
@myproduct.price // <- This obviously fails because myproduct is an Option[Product]
@myproduct.getOrElse("not found").price // <- this does not work because price is not defined on the getOrElse.
@myproduct.price/您使用的getOrElse
错误。传递给getOrElse
的值也应该是Product
类型,然后像您那样应用price
一个解决方案是创建一个默认的产品
,您可以在使用getOrElse
时传递该产品
更好的解决方案是使用map
,例如:
@myproduct.map { actualProduct =>
actualProduct.price
}
只有在选项
不是None
的情况下,当您想要对您的case类执行某些操作时,才会使用此选项