Hola chicos,
Necesito una función que, cuando elimine un usuario, usted y ese usuario eliminado no se verán en su lista de usuarios. No estoy seguro de cómo puedo hacer que esto suceda. ¿Podría ayudarme?
Muchas gracias de antemano !
esquema de usuario:
const mongoose = require("mongoose"); const userSchema = new mongoose.Schema( { userName: { type: String, }, deleteList: [{ type: mongoose.Types.ObjectId, ref: "User" }], beenDeletedList: [{ type: mongoose.Types.ObjectId, ref: "User" }], } ); const User = mongoose.model("User", userSchema); module.exports = UserInfo;Obtenga todos los usuarios filtrados (no estoy seguro de cómo puedo filtrar todos los usuarios eliminados y mostrar el resto de los usuarios):
exports.getSortedUsers = async (req, res, next) => { const user = await User.findById(req.body._id); }Puede excluir una matriz de objetos de mongoose find con el operador $nor .
En tu caso, puedes intentar algo como esto:
exports.getSortedUsers = async (req, res, next) => { const users = await User.find({ $nor: beenDeletedList }); }Con beenDeletedList está la lista de usuarios bloqueados (eliminados) por usted.