Salat不反序列化映射到Option [Set [A]]的集合

lob*_*234 5 scala mongodb salat lift-json

我在scala-salat Google小组中问了这个问题,但几天没有回复,因此在这里尝试.

我有一个案例类,其中包含一个集合Option.

case class SomeClass(
  var name:Option[String]=None,
  var addresses:Option[Set[Address]]=None
)

case class Address(
  var street:Option[String]=None,
  var zip:Option[String]=None
) 
Run Code Online (Sandbox Code Playgroud)

该文档存储在Mongo中就好了.但是,当我尝试使用findOne(有或没有SalatDAO)时,地址字段具有表示地址而不是地址案例类的JSON文本.

因此,Lift-JSON会跳过我的case类中的任何字段Option[Collection[A]].当我删除Option并且只是一起使用时addresses=Set[Address](),它可以工作.但是现在我最终在我的JSON中没有数据的空集,如果消费者删除了条目,我无法找到更新,或者我得到一个空,Set因为消费者没有发送此字段原始请求.

使用Option会将字段设置为None,这意味着我不必担心它是空的或修改的.

任何帮助将不胜感激.

小智 4

抱歉,Salat 目前不支持包含集合的选项。