在MongoDB shell中运行ROR模型方法

时间:2016-04-18 17:16:50

标签: ruby-on-rails ruby mongodb shell

我的模型中有一个ruby方法。我正在测试生产中的方法,并希望在MongoDB shell中运行该方法。运行模型中的ruby方法的语法是什么。这是我的方法。

Coupon.rb

 def self.get(code)
  where(
    :code => (normalize_code(code)),
    :$and => [
      {
        :$or => [
          { :coupon_count.gte => 1  },
          { :coupon_count    => nil }
        ]
      }, {
        :$or => [
          { :expires_at.gte => Date.today },
          { :expires_at    => nil }
        ]
      }
    ]
  ).first
end

我似乎找不到在MongoDB Shell中运行此方法的方法。

1 个答案:

答案 0 :(得分:2)

你混合了两件不同的东西。您的Rails模型是用Ruby语言编写的,可以在Ruby解释器中运行。

MongoDB shell基本上是MongoDB实例的接口,它没有Ruby解释器。所以无法在MongoDB shell中调用 Rails模型方法