【问题标题】:Embedded JSON Objects not saved in BsonRecordListField using fromJSON嵌入的 JSON 对象未使用 fromJSON 保存在 BsonRecordListField 中
【发布时间】:2012-07-17 18:04:35
【问题描述】:

我正在使用 lift-mongodb-record 2.4 来管理 RESTful JSON Web 服务的 MongoRecords。一切都很好,除了我遇到的一个问题:嵌入式 BsonRecordListFields 不会自动保存。

这是我的测试 JSON:

{"name":"test","control_points":[{"dx":64,"dy":97},{"dx":358,"dy":64},{"dx":211,"dy":80.5}]}

但是通过println(Artifact.fromJSON(request.body).get)打印模型只会打印

class com.test.model.Artifact={name=test, control_points=}

这些是我的模型类:

class ControlPoint private () extends BsonRecord[ControlPoint] {
  def meta = ControlPoint
  object dx extends DoubleField(this)
  object dy extends DoubleField(this)
}

object ControlPoint extends ControlPoint with BsonMetaRecord[ControlPoint]

class Artifact private () extends MongoRecord[Artifact] with ObjectIdPk[Artifact] {
  def meta = Artifact
  object name extends StringField(this, 1024)
  object control_points extends BsonRecordListField(this,ControlPoint)
}
object Artifact extends Artifact with MongoMetaRecord[Artifact] {}

为什么嵌入的东西没有保存?我在这里想念什么吗?

非常感谢! 马丁

【问题讨论】:

    标签: scala mongodb lift bson


    【解决方案1】:

    正如lift mailing listlift-json 中指出的那样,将数字解析为整数,因为它们没有小数点。我只是将字段更改为IntField,并在客户端通过parseInt 将所有日期解析为整数。

    【讨论】:

      猜你喜欢
      • 2015-01-17
      • 2020-12-18
      • 2022-01-19
      • 2020-06-22
      • 2013-06-06
      • 2014-01-30
      • 1970-01-01
      • 2012-10-05
      • 1970-01-01
      相关资源
      最近更新 更多