模块:Mongoid::Criteria::Queryable::Optional
Overview
可选模块包括与查询周围的额外的选项有关的所有行为,例如跳过、限制、排序等。
实例属性摘要折叠
类方法摘要折叠
- 
  。 Forwardables ⇒ Array<Symbol>获取可从模型转发到的可选选项的方法。 
实例方法摘要折叠
- 
  # ascending (*fields) ⇒ 可选(也:#asc)为所有提供的字段添加升序排序选项。 
- 
  # batch_size (value = nil) ⇒ 可选添加用于告知MongoDB在批处理中要检索多少文档的选项。 
- 
  # collation (collation_doc) ⇒ 可选设置排序规则。 
- 
  # comment (comment = nil) ⇒ 可选将注释与查询关联。 
- 
  # cursor_type (type) ⇒ 可选设置游标类型。 
- 
  #降序(*fields) ⇒ 可选(也:#desc)为所有提供的字段添加降序排序选项。 
- 
  #hint (value = nil) ⇒ 可选将索引提示添加到查询选项。 
- 
   #limit(value = nil) ⇒ Optional   在返回的结果中添加要限制的文档数量。 
- 
  # max_scan (value = nil) ⇒ 可选添加用于限制集合中已扫描文档数量的选项。 
- 
  # max_time_ms (value = nil) ⇒ 可选为游标上的处理操作添加累积时间限制(以毫秒为单位)。 
- 
  # no_timeout ⇒ 可选指示查询不要超时。 
- 
  # only (*args) ⇒ 可选将结果限制为仅包含所提供的字段。 
- 
  # order_by (*spec) ⇒ 可选(又作:#order)在选项中添加排序条件。 
- 
  # reorder (*spec) ⇒ 可选使用此方法可以将现有排序完全替换为所提供的排序,而不是合并排序条件。 
- 
  # skip (value = nil) ⇒ 可选(又作:#offset)添加要跳过的文档数量。 
- 
  # slice (criterion = nil) ⇒ 可选通过对嵌入式数组进行切片来限制返回的结果。 
- 
  # snapshot ⇒ 可选让查询在快照模式下运行。 
- 
  # without (*args) ⇒ 可选将结果限制为仅包含未提供的字段。 
从Macroable包含的方法
实例属性详细信息
# options ⇒对象
返回属性选项的值。
| 14 15 16 | # File 'lib/mongoid/criteria/queryable/Optional.rb', line 14 def @options end | 
# options查询选项。 (查询选项。) ⇒对象
| 14 | # File 'lib/mongoid/criteria/queryable/Optional.rb', line 14 attr_accessor :options | 
类方法详细信息
。 Forwardables ⇒ Array<Symbol>
获取可从模型转发到的可选选项的方法。
| 374 375 376 | # File 'lib/mongoid/criteria/queryable/Optional.rb', line 374 def Forwardables public_instance_methods(false) - [ :options, :options= ] end | 
实例方法详细信息
# ascending (*fields) ⇒可选也称为: asc
为所有提供的字段添加升序排序选项。
| 24 25 26 | # File 'lib/mongoid/criteria/queryable/Optional.rb', line 24 def ascending(*字段) sort_with_list(*字段, 1) end | 
# batch_size (value = nil) ⇒可选
添加用于告知MongoDB在批处理中要检索多少文档的选项。
| 40 41 42 | # File 'lib/mongoid/criteria/queryable/Optional.rb', line 40 def batch_size(值 = nil) 选项(值) { || .存储(:batch_size, 值) } end | 
# collation (collation_doc) ⇒可选
设置排序规则。
| 303 304 305 | # File 'lib/mongoid/criteria/queryable/Optional.rb', line 303 def 排序规则(collation_doc) 克隆.点击 { |查询| 查询..存储(:collation, collation_doc) } end | 
#comment(comment = nil) ⇒ Optional
    注意:
    
  
将 profilingLevel 设置为2 ,评论将与查询一起记录在配置文件集合中。
将注释与查询关联。
| 274 275 276 277 278 | # File 'lib/mongoid/criteria/queryable/Optional.rb', line 274 def comment(comment = nil) 克隆.点击 do |查询| 查询..存储(:comment, comment) end end | 
# cursor_type (type) ⇒可选
    注意:
    
  
游标的类型可以是 :tailable 或 :tailable_await。
设置游标类型。
| 291 292 293 | # File 'lib/mongoid/criteria/queryable/Optional.rb', line 291 def cursor_type(类型) 克隆.点击 { |查询| 查询..存储(:cursor_type, 类型) } end | 
#降序(*fields) ⇒可选也称为: desc
为所有提供的字段添加降序排序选项。
| 52 53 54 | # File 'lib/mongoid/criteria/queryable/Optional.rb', line 52 def descending(*字段) sort_with_list(*字段, -1) end | 
#hint (value = nil) ⇒可选
将索引提示添加到查询选项。
| 67 68 69 | # File 'lib/mongoid/criteria/queryable/Optional.rb', line 67 def 提示(值 = nil) 选项(值) { || .存储(:hint, 值) } end | 
#limit(value = nil) ⇒ Optional
在返回的结果中添加要限制的文档数量。
| 79 80 81 82 83 84 85 | # File 'lib/mongoid/criteria/queryable/Optional.rb', line 79 def limit(值 = nil) 选项(值) do |, 查询| val = 值.to_i .存储(:limit, val) 查询.管道.推动(" $limit " => val) if 正在聚合? end end | 
# max_scan (value = nil) ⇒可选
添加用于限制集合中已扫描文档数量的选项。
| 96 97 98 | # File 'lib/mongoid/criteria/queryable/Optional.rb', line 96 def max_scan(值 = nil) 选项(值) { || .存储(:max_scan, 值) } end | 
# max_time_ms (value = nil) ⇒可选
为游标上的处理操作添加累积时间限制(以毫秒为单位)。
| 108 109 110 | # File 'lib/mongoid/criteria/queryable/Optional.rb', line 108 def max_time_ms(值 = nil) 选项(值) { || .存储(:max_time_ms, 值) } end | 
# no_timeout ⇒可选
指示查询不要超时。
| 118 119 120 | # File 'lib/mongoid/criteria/queryable/Optional.rb', line 118 def no_timeout 克隆.点击 { |查询| 查询..存储(:timeout, false) } end | 
# only (*args) ⇒可选
将结果限制为仅包含所提供的字段。
| 130 131 132 133 134 135 136 137 138 139 | # File 'lib/mongoid/criteria/queryable/Optional.rb', line 130 def only(*args) args = args.展平 选项(*args) do || .存储( :fields, args.注入([:fields] || {}){ |子, 字段| 子.点击 { 子[字段] = 1 }}, false ) end end | 
# order_by (*spec) ⇒可选也称为: order
在选项中添加排序条件。
| 170 171 172 173 174 175 176 177 178 179 | # File 'lib/mongoid/criteria/queryable/Optional.rb', line 170 def order_by(*spec) 选项(spec) do |, 查询| spec.compact.每 do |criterion| criterion.__sort_option__.each_pair do |字段, 方向| add_sort_option(, 字段, 方向) end 查询.管道.推动(" $sort " => [:sort]) if 正在聚合? end end end | 
# reorder (*spec) ⇒可选
使用此方法可以将现有排序完全替换为所提供的排序,而不是合并排序条件。
| 191 192 193 194 195 | # File 'lib/mongoid/criteria/queryable/Optional.rb', line 191 def 重新排序(*spec) 克隆.点击 do |查询| 查询..删除(:sort) end.order_by(*spec) end | 
# skip (value = nil) ⇒可选也称为:偏移量
添加要跳过的文档数量。
| 205 206 207 208 209 210 211 | # File 'lib/mongoid/criteria/queryable/Optional.rb', line 205 def 跳过(值 = nil) 选项(值) do |, 查询| val = 值.to_i .存储(:skip, val) 查询.管道.推动(" $skip " => val) if 正在聚合? end end | 
# slice (criterion = nil) ⇒可选
通过对嵌入式数组进行切片来限制返回的结果。
| 222 223 224 225 226 227 228 229 230 | # File 'lib/mongoid/criteria/queryable/Optional.rb', line 222 def slice(criterion = nil) 选项(criterion) do || .__union__( 字段: criterion.注入({}) do |选项, (字段, val)| 选项.点击 { |opt| opt.存储(字段, { " $slice " => val }) } end ) end end | 
# 快照 ⇒可选
让查询在快照模式下运行。
| 238 239 240 241 242 | # File 'lib/mongoid/criteria/queryable/Optional.rb', line 238 def snapshot 克隆.点击 do |查询| 查询..存储(:快照, true) end end | 
# without (*args) ⇒可选
将结果限制为仅包含未提供的字段。
| 252 253 254 255 256 257 258 259 260 261 | # File 'lib/mongoid/criteria/queryable/Optional.rb', line 252 def 没有(*args) args = args.展平 选项(*args) do || .存储( :fields, args.注入([:fields] || {}){ |子, 字段| 子.点击 { 子[字段] = 0 }}, false ) end end |