Empresas
Empregos
  • Sobre nós
  • Soluções
    • Publicação de vagas
      Publique sua vaga e receba candidatos qualificados em 48h.
    • Avaliações de candidatos
      Mais de 500 testes técnicos e psicológicos, mais anti-fraude.
    • Headhunting
      Busca executiva personalizada do início ao fim.
    • Folha de Pagamento + EOR
      Dispersão de folha e EOR em mais de 15 países da LATAM.
  • Preços
  • Empregos

0

296
Visualizações
$pullAll in mongoose doens't work

I have this mongoose schema:

// ------- creating active_rooms model -------

var active_rooms_schema = mongoose.Schema({
    room_name: String,
    users: [String]
});
var active_rooms = mongoose.model('active_rooms', active_rooms_schema);

the DB looks like this:

[{"_id":"586b8eeeebb48c65bcbbc5f3","room_name":"my_roome","__v":0,"users":["sam","sally"]}]

pretty strightforward. I have a chat room and people (array of user to that room). I want to remove a certain person once he/she exits the room.

therfore, I wrote this code on my server:

remove_user_from_room: function (user_name, room_name) {
    console.log("remove_user_from_room: " + room_name + ", user: " + user_name);
    active_rooms.update( {'room_name': room_name }, { $pullAll: {'users': [user_name] } } )
},

however, this code doesn't remove a user from the array. it doesn't change the array in my DB.

where is my mistake?

Thanks

over 4 years ago · Santiago Trujillo
2 Respostas
Responde à pergunta

0

The problem was of lack sync, I needed to use promises.. the code above is correct.

over 4 years ago · Santiago Trujillo Relatório

0

Why are you using $pullAll, if you want to remove a single person only. Use $pull

remove_user_from_room: function (user_name, room_name) {
    console.log("remove_user_from_room: " + room_name + ", user: " + user_name);
    active_rooms.update( {'room_name': room_name }, { $pull: {'users': user_name } } )
},
over 4 years ago · Santiago Trujillo Relatório
Responde à pergunta
Encontrar trabalhos remotos

Descubra a nova forma de encontrar um emprego!

melhores empregos
Principais categorias de trabalho
Empresas
Postar vaga Preços Comercial
Jurídico
Termos e Condições Política de privacidade
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Recomende algumas ofertas para mim
Preciso de ajuda