Я не могу выполнить команду увеличения счетчика целых чисел в БД mongo. Хотя команда отлично работает в оболочке Монго.
Так вот пример программы:
require 'rubygems'
require 'mongo'
# create sample mongo local DB
db = Mongo::Connection.new.db("dbtest")
# create sample mongo collection within DB
mytable = db.collection("tabletest")
# inserting some records into sample collection
mytable.insert({'name'=>'apple','mycnt'=>0})
mytable.insert({'name'=>'orange','mycnt'=>0})
mytable.insert({'name'=>'pear','mycnt'=>0})
######## following statement throws error
######syntax error, unexpected '}', expecting $end
mytable.update({"name": "apple"},{"$inc": {"mycnt": 1}})
Я не уверен, что неправильно в последнем утверждении с точки зрения синтаксиса при запуске как обычная программа ruby (не оболочка mongo). Любая помощь очень ценится. Аналогичная команда в оболочке mongo работает нормально, которая выглядит следующим образом:
# db.tabletest.update({name: "apple"},{$inc: {mycnt: 1}})