2012-06-13 3 views
1

Обычно для удаления некоторых полей из коллекций в MongoDB используется $unset. Что я могу сделать в Ruby для этого? Я попытался прочитать this, но я не мог понять, как его использовать. Я новичок в Ruby и все еще учился работать с ним.Удаление полей с помощью Ruby

+0

Почему вы не можете использовать $ unset? –

+0

Нет, просто хочу знать на всякий случай. Я изучаю Ruby и так хочу знать, как я могу это сделать с Ruby. – Kuralai

+1

$ unset удаляет поля, а ruby ​​«remove» удаляет целые документы. Это две разные вещи. Также рубиновый клиент - это просто клиент. Он обертывает некоторые вещи синтаксисом ruby, но вы все равно можете передать синтаксис mongo. –

ответ

2

Оператор $unset используется через update команды, которая документально here для водителя рубина.

Взяв шаг назад, стандартный (10gen-поддерживаемый) драйвер MongoDB Ruby может делать абсолютно все, что может сделать mongodb. Он предоставляет в буквальном смысле полные возможности mongodb, так же как и драйверы mongodb на других языках. Так что не беспокойтесь о том, чтобы делать манго на любом конкретном языке.

Возможно, вам будет интересно узнать о возможностях популярных слоев ODM, так как они меняются. Уровни ODM отображают документы mongodb на объекты родного языка. В Ruby mongoid является самым популярным ODM. Как отмечает @Tilo, он также поддерживает явное удаление полей из документов через API более высокого уровня.

Смежные вопросы