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

Array von Objekten in Mongodb aktualisieren

Ich habe es geschafft, dies zu beheben, indem ich mein Objekt zugeordnet und 2 separate Updates ausgeführt habe. Der erste entfernt das alte Element und der zweite fügt die aktualisierte Version hinzu. Ich bin mir sicher, dass es einen besseren Weg gibt, aber das scheint zu funktionieren.

handleFormSubmit(event) {
  event.preventDefault();
  const { careerHistoryPositions } = this.state;

  ProfileCandidate.update({_id: this.state.profileCandidateCollectionId}, { $unset: {
    'careerHistoryPositions': {}
  }
})        


const updatePosition = this.state.careerHistoryPositions.map((position) => {
  ProfileCandidate.update({_id: this.state.profileCandidateCollectionId}, { $push: {
    'careerHistoryPositions': {
      company: position.company,
      title: position.title,
      uniqueId: position.uniqueId
    }
  }
})