, выдавшего MongoDB команды:
db.foo.insert({ x: "foo", y: "bar" })
db.foo.update({ x: "foo" }, { $unset: { y: 1 } })
вызывает эту ошибку: MongoError: Invalid modifier $unset
Как я понимаю, согласно Update Operators: $unset части MongoDB docs, это должно работать безупречно.
Shell Версия: 2.4.4 - установка (Ubuntu 10.04): MongoDB-10gen_2.4.4_amd64.deb
MongoDB журнала говорит: update test.foo query: { x: "foo" } exception userassert:Invalid modifier specified $unset 0ms
она отлично работает для меня. является точной cut-n-paste? если да, то какая именно версия - проверьте как version(), так и db.version() –
Да, копирование вашей команды и вставка ее в оболочку Mongo 2.2.3 на моем компьютере работает для меня. Вы должны использовать устаревшую багги-версию (текущая версия 2.4 - 2.4.4) или тот, который был неправильно установлен или что-то вроде странной кодировки. –
@ АсяКамский Выдача команды version() возвращает 2.4.4, но db.version() возвращает 1.2.2! Взглянув в это прямо сейчас. – conspireagainst