Ruby on rails 在rails中运行本机mongodb命令

Ruby on rails 在rails中运行本机mongodb命令,ruby-on-rails,ruby,mongodb,mongoid,Ruby On Rails,Ruby,Mongodb,Mongoid,我使用的是Mongoid,但我需要做的就是增加一个整数字段。我是否值得跳过使用Mongoid的方法,只运行mongodb ruby drivers方法来增加一个值 我该怎么做呢?为什么不使用Mongoid的方法呢 Model#inc 执行MongoDB的修饰符,该修饰符将其值增加所提供的量或将其初始化为该值。如果字段不是数字,则会引发错误 因此,执行model.inc(:a,11)应该将{$inc:{a:11}}更新直接发送到MongoDB。为什么不使用Mongoid的方法呢 Model#inc

我使用的是Mongoid,但我需要做的就是增加一个整数字段。我是否值得跳过使用Mongoid的方法,只运行mongodb ruby drivers方法来增加一个值

我该怎么做呢?

为什么不使用Mongoid的方法呢

Model#inc

执行MongoDB的修饰符,该修饰符将其值增加所提供的量或将其初始化为该值。如果字段不是数字,则会引发错误

因此,执行
model.inc(:a,11)
应该将
{$inc:{a:11}}
更新直接发送到MongoDB。

为什么不使用Mongoid的方法呢

Model#inc

执行MongoDB的修饰符,该修饰符将其值增加所提供的量或将其初始化为该值。如果字段不是数字,则会引发错误


因此,执行
model.inc(:a,11)
应该将
{$inc:{a:11}}
更新直接发送到MongoDB。

Mu太短是正确的,您可以使用内置的mongoid#inc方法:

Model.inc(:field, integer)
或者,您可以通过“集合”属性直接访问集合:

Model.collection.update(
  { query document },
  { "$inc" => { :field => value } }
)

Mu太短是正确的,您可以使用内置的mongoid#inc方法:

Model.inc(:field, integer)
或者,您可以通过“集合”属性直接访问集合:

Model.collection.update(
  { query document },
  { "$inc" => { :field => value } }
)