模块:Mongoid::Criteria::Queryable::Extensions::Symbol::ClassMethods

定义于:
lib/mongoid/criteria/queryable/extensions/symbol.rb

实例方法摘要折叠

实例方法详细信息

# add_key (name,strategy, 操作符,additional=nil,&block) ⇒对象

在符号上添加方法,以方便MongoDB操作符。

例子:

添加 $in 方法。

Symbol.add_key(:in, "$in")

参数:

  • 名称 (符号)

    方法的名称。

  • 策略 (符号)

    合并策略的名称。

  • 运算符 ( string )

    MongoDB 操作符。

  • 附加 string (默认为: nil

    附加MongoDB 操作符。



36
37
38
39
40
41
# File 'lib/mongoid/criteria/queryable/extensions/symbol.rb', line 36

def add_key(名称, 策略, 运算符, 附加 = nil, )
  define_method(名称) do
    方法 = " __ #{策略} __ ".to_sym
    .new(self, 方法, 运算符, 附加, )
  end
end

# describe (object) =" Symbol "

将符号演变成MongoDB友好的值,在本例中为符号。

例子:

演进符号

Symbol.evolve("test")

参数:

  • 对象 ( Object )

    要转换的对象。

返回:

  • (符号)

    作为符号的值。



52
53
54
55
56
# File 'lib/mongoid/criteria/queryable/extensions/symbol.rb', line 52

def 发展(对象)
  __evolve__(对象) do |obj|
    obj.try(:to_sym)
  end
end