Your Web News in One Place

Help Webnuz

Referal links:

Sign up for GreenGeeks web hosting
February 17, 2022 07:19 am GMT

How to delete documents in mongo with mongoose

To delete one entry you can use findOneAndRemove command - it issues a mongodb findAndModify remove command.
Finds a matching document, removes it, passing the found document (if any) to the callback.

let deleteBookmarkById = async (userId, bookmarkId) => {  const bookmark = await Bookmark.findOneAndRemove({    _id: bookmarkId,    userId: userId  });  if ( !bookmark ) {    throw new NotFoundError('Bookmark NOT_FOUND with id: ' + bookmarkId);  } else {    return true;  }};

An alternative is to use the deleteOne() method which deletes the first document that matches conditions from the collection. It returns an object with the property deletedCount indicating how many documents were deleted:

let deleteBookmarkById = async (userId, bookmarkId) => {  const response = await Bookmark.deleteOne({    _id: bookmarkId,    userId: userId  });  if ( response.deletedCount !== 1 ) {    throw new NotFoundError('Bookmark NOT_FOUND with id: ' + bookmarkId);  } else {    return true;  }};

To delete multiple documents use the deleteMany function. This deletes all the documents that match the conditions specified in filter. It returns an object with the property deletedCount containing the number of documents deleted.

/** * Delete bookmarks of a user, identified by userId */let deleteBookmarksByUserId = async (userId) => {  await Bookmark.deleteMany({userId: userId});  return true;};


Reference -

https://mongoosejs.com/docs/api/model.html

Shared with from Codever. Use copy to mine functionality to add it to your personal snippets collection.


Original Link: https://dev.to/ama/how-to-delete-documents-in-mongo-with-mongoose-5hh1

Share this article:    Share on Facebook
View Full Article

Dev To

An online community for sharing and discovering great ideas, having debates, and making friends

More About this Source Visit Dev To