MongoDB
 sql >> Datenbank >  >> NoSQL >> MongoDB

Wie verwende ich fetchNewObject mit update.one ReactiveMongo?

Es gibt keine Möglichkeit, fetchNewObject zu verwenden mit einem update Befehl , da dies keine Option ist, die von diesem Befehl unterstützt wird.

Sie scheinen zu denken, dass findAndModify kann nicht mit Transaktion verwendet werden, was nicht der Fall ist:kann mit Transaktion verwendet werden .

for {
  ds <- db.startSession()
  dt <- ds.startTransaction(None)

  coll = dt.collection(colName)
  _ <- coll.findAndUpdate(selector, james, upsert = true)
} yield ...

Wenn Sie dennoch update verwenden möchten aus unerwähntem Grund, dann müssen Sie ein find ausführen danach in derselben Transaktion.