2013-04-24 2 views
4

У меня есть это приложение, я работаю ...Как удалить элемент массива в метеор, используя монго?

http://stevedavis.meteor.com/

Вы можете увидеть содержимое коллекции группы, делая «Groups.find()» в консоли.

я это в моих JS ...

Template.listGroups.events({ 
    'click .deleteMember': function(){ 
    var groupID = this.groupID, 
     firstName = this.firstName, 
     lastName = this.lastName; 
    } 
}); 

Итак, я хочу быть в состоянии удалить участника из группы, если я нажимаю X рядом с его именем. Я пробовал ...

Groups.update({"_id": groupID }, {$unset: { "members" : {"firstName": firstName, "lastName": lastName} } }); 

, но он удалил ВСЕ участников. Я только хочу, чтобы он удалял элемент-член, который соответствует первому и последнему имени щелчка элемента. Благодарю.

+0

похоже дубликат вашего вопроса об удалении одного и того же элемента из нескольких документов ... –

+0

это не то же самое. – Steven

ответ

9

А, мне просто нужно было изменить «$ unset» на «$ pull». Я добавил через «$ push», поэтому подумал: «Есть ли метод $ pull?» И было! :)

Groups.update({"_id": groupID }, {"$pull": { "members" : {"firstName": firstName, "lastName": lastName} } }); 
0

Я нашел эту удивительную страницу в документации MongoDB, которая показывает запрос/проекцию вы обнаружили здесь плюс многое другое!

MongoDB documentation.

Спасибо за вопрос этот - ваш ответ меня на правильном пути.