gpt4 book ai didi

mongodb - 不坚持 Scala None's 而不是坚持为空值

转载 作者:可可西里 更新时间:2023-11-01 09:34:31 26 4
gpt4 key购买 nike

我注意到 scala 驱动程序(版本 1.2.1)将 None 的 Option 值写入相应的字段。在这种情况下,我宁愿完全省略 fieid。这可能吗?

示例

case class Test(foo: Option[String])
persist(Test(None))

导致

> db.test.find()
{ "_id": "...", "foo": null }

但我想实现

> db.test.find()
{ "_id": "..." }

当我使用 casbah 时,我认为我的预期行为是默认行为。

最佳答案

http://mongodb.github.io/mongo-scala-driver/2.4/bson/macros/

现在你可以为它使用宏了:

val testCodec = Macros.createCodecProviderIgnoreNone[Test]()

在编解码器配置文件中:

lazy val codecRegistry: CodecRegistry = fromRegistries(fromProviders(testCodec))

关于mongodb - 不坚持 Scala None's 而不是坚持为空值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41889645/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com