問題タブ [mongo-scala-driver]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
scala - mongo-scala-driver: Observable で部分的な結果とデコード エラーの両方をキャプチャするにはどうすればよいですか?
検索操作を使用して、出現するデコード例外とデータの両方を値としてキャプチャする方法はありますか?
取得したすべての BSON をデコードすると、無効なプロパティを持つものもあり、ドメイン オブジェクトにデコードできません。
私が考えていたこと:
1 つの値をデコードできない場合、操作全体が失敗することに気付きました。どういうわけかエラーと有効なデータを蓄積できると思っていました。
json - Scala 言語を使用した MongoDB
MongoDB と Scala 言語は初めてです
私はscala言語を使用してmongodbをローカルに接続しています
以下の依存関係を使用しています
// https://mvnrepository.com/artifact/org.mongodb.scala/mongo-scala-driver
libraryDependencies += "org.mongodb.scala" %% "mongo-scala-driver" % "4.2.3"
私が試したこと
以下の形式でデータを返す上記のコード
私も試してみました
私も試してみましたがprintResult()
、printHeadResult()
方法はどれも機能していません
事前に感謝を助けてください
mongodb - ケースクラスの継承された要素がscala mongoドライバーを使用してmongodbに永続化されない
mongo-scala-driver 2.7.0 を使用して mongo db に永続化したかったのです。私のケースクラスは次のように少し見えます
ご覧のとおり、アプリに対するメタデータは、アプリ (App1 と App2) によって大きく異なる場合があります。したがって、すべてのアプリで使用できる 1 つのメタデータ ケース クラスを持つことはできません。したがって、上記のように、アプリごとにメタデータのケース クラスを用意し、それらすべてを親のトレイトから拡張することにしました。これを達成するために、ここでscala mongoドライバーのドキュメントと別のstackoverflowの質問に従おうとしていました。ご覧のとおり_t
、sealed trait にフィールドを入れました。ドキュメントによると、これは Bson との間でドキュメントをデコードおよびエンコードする際のヒントとして役立つため、必須です。
これが私のコーデックの外観です
私は単に使い続ける
mongo db に永続化されているドキュメントには、_t field
内部のメタデータ オブジェクトがありません。これは、Mongo Scala Driver が bson を適切なメタデータ ケース クラスに変換するためにドキュメントに従って必要なため、次を使用してドキュメントを取得しようとすると
エラーメッセージで次のように表示されます
Could not decode sealed case class. Missing '_t' field.
ただし、_t フィールドをメタデータ オブジェクト内の mongo に、デコード先のクラスの名前で明示的に追加すると、すべてが正常に機能し、get 操作中に正しいケース クラスが取得されます。_t field
なぜ mongo insert を使用しても、が挿入されないのかわかりません