редактирования:
Структура документа:
{"tags" : ["a"], "name" : "a", "creator" : "Nick here", "users" : [ "Nick here"], "connected" : 1, "ra" : 0.3967885102611035, "_id" : ObjectId("513c3e42071a103c09000003")}
У меня есть проблемы с MongoDB $ оператора тянуть. Он не удаляет значение из массива. Вот мой запрос:
db.rooms.update({users: ["Nick here"]},{$pull: {users: ["Nick here"]}})
Вот как поле пользователей выглядит следующим образом:
(...) ,"users" : [ "Nick here" ],
(...)
, если я пишу это так:
db.rooms.update({users: "Nick here"},{$pull: {users: ["Nick here"]}})
или
db.rooms.update({users: "Nick here"},{$pull: {users: "Nick here"}})
возвращается ошибка:
Невозможно применить $ тянущий/$ pullAll модификатор не-массив
Что плохого в этих запросах? Я хочу вытащить/нажимать ники пользователей и удалять документы, когда поле пользователя пусто.
Спасибо заранее, Михал
Можете ли вы показать структуру документа? В этом вопросе нет ничего плохого: «db.rooms.update ({users:« Nick here »}, {$ pull: {users:« Nick here »}})' – user20140268
Я добавил структуру документа Редактировать: it кажется, что ник сейчас потянут правильно, я не знаю, что случилось с этим – draku