ユーザIDの検索結果として返されるnet.liftweb.util.Boxオブジェクトがあります。ボックスオブジェクトは次のような内容を返します。Lift Scala net.liftweb.util.Boxオブジェクト内のアクセスエンティティ
net.liftweb.util.Box[MyEntity{attributes}]
ボックス内のエンティティにアクセスするにはどうすればよいですか?特に、ボックス内のエンティティの属性にアクセスする必要があります。
ユーザIDの検索結果として返されるnet.liftweb.util.Boxオブジェクトがあります。ボックスオブジェクトは次のような内容を返します。Lift Scala net.liftweb.util.Boxオブジェクト内のアクセスエンティティ
net.liftweb.util.Box[MyEntity{attributes}]
ボックス内のエンティティにアクセスするにはどうすればよいですか?特に、ボックス内のエンティティの属性にアクセスする必要があります。
あなたはforeachの/マップ・メソッド呼び出し内ボックスの内容にアクセスすることができますhttp://lift.la/scala-option-lift-box-and-how-to-make-your-co
を参照してください。たとえば、あなたのエンティティのうちの名前を取得したい場合:ボックスがいっぱいになっている
myBoxedEntity.map(_.name) openOr "No Name Provided"
場合、あなたはそれ以外のエンティティ名を取得します、あなたがメッセージを取得します。
オブジェクトdmap上で何らかの操作を実行したい場合は参考にしてください。例えば
:
fooBox.dmap("Yo!")(foo =>
// dome some staff with foo
result // must be string
)
あなたはfooBox.open_を呼び出して直接要素を取得することができます!しかし、それはお勧めしません。ボックスが空の場合、nullポインタ例外が発生することがよくあります。
フィールドだけでなく、完全なオブジェクトをどのようにアンボックスしますか。たとえば、返されたオブジェクトのフィールドに基づいて新しい任意のオブジェクトを作成したいとします。 – Jack