类:Mongo::Collection::View
- 继承:
-
对象
- 对象
- Mongo::Collection::View
- 扩展方式:
- 可转发
- 定义于:
- build/Ruby-driver-v 2.19 /lib/mongo/collection/view.rb ,
build/Ruby-driver-v 2.19 /lib/mongo/collection/view/iterable.rb,
build/Ruby-driver-v 2.19 /lib/mongo/collection/view/可读.rb,
build/Ruby-driver-v 2.19 /lib/mongo/collection/view/writable.rb,
build/Ruby-driver-v 2 。 19 /lib/mongo/collection/view/immutable.rb,
build/Ruby-driver-v 2 . 19 /lib/mongo/collection/view/map_reduce.rb,
build/Ruby-driver-v 2 . 19 /lib/mongo/collection/view/aggregation.rb,
build/Ruby-driver-v 2 . 19 /lib/mongo/collection/view/explainable.rb,
build/Ruby-driver-v 2 . 19 /lib/mongo/collection/view/change_stream.rb,
build/Ruby-driver-v 2 . 19 /lib/mongo/collection/view/builder/map_reduce.rb,
build/Ruby-driver-v 2 。 19 /lib/mongo/collection/view/builder/aggregation.rb,
build/Ruby-driver-v 2 。 19 /lib/mongo/collection/view/change_stream/retryable.rb
Overview
View
API 是半公开的。
生成文档结果设立的查询和选项的表示形式。
可以使用助手来修改View
。 助手可以链式运行,因为如果提供了参数,每个助手都会返回View
。
调用“终结器”时,会将查询消息发送到服务器。 例如,当在View
上调用 #each 时,会创建一个游标对象,然后该对象会将查询发送到服务器。
View
不是由用户直接创建的。 相反, View
会在调用 CRUD 操作时创建View
,并将其返回给用户进行交互。
在命名空间下定义
模块: Builder 、 Explainable 、 Immutable 、 Iterable 、 Readable 、 Writable类: Aggregation 、 ChangeStream 、 MapReduce
常量摘要
Writable中包含的常量
可解释性中包含的常量
explainable::ALL_PLANS_EXECUTION 、explainable ::EXECUTION_STATS 、explainable ::QUERY_PLANNER
实例属性摘要折叠
-
# 集合 ="Collection"(集合)
只读
要查询的
Collection
。 -
# 过滤 ⇒ 哈希(也称为:#selector)
只读
查询筛选器。
Iterable包含的属性
包含在Immutable中的属性
实例方法摘要折叠
-
# == (other) ⇒ true, false (又名:#eql?)
比较两个
View
对象。 -
#哈希⇒ 整数
View
的哈希值由集合命名空间、选项哈希和筛选器哈希组成。 -
#initialize (集合, 过滤 = {}, options = {}) ⇒ 查看
构造函数
创建一个新的
View
。 -
#检查⇒ string
获取
View
的人类可读string表示形式。 -
# write_concern ⇒ Mongo::WriteConcern
获取此
View
上的写关注(write concern)。
从Writable中包含的方法
#delete_many 、# delete_one 、# find_one_and_delete 、# find_one_and_replace 、 #find_one_and_update 、#replace_one、 #update_many 、 # update_one
方法包含在可解释
Readable中包含的方法
#aggregate、# allow_disk_use 、 #allow_partial_results 、 # await_data 、 #batch_size 、 #comment 、#count、#count_documents、#cursor_type、#distinct、#estimated_document_count、# hint 、# limit 、 # map_reduce 、 # max_await_time_ms 、 # max_scan 、 # max_time_ms 、 #max_value 、 #min_value 、 #modifiers 、 #no_cursor_timeout 、 #projection 、 #read 、 #read_concern 、 #read_preference 、 #return_key 、 #show_disk_loc 、 #skip 、 #snapshot 、 #sort
从Iterable包含的方法
构造函数详情
#initialize (集合, 过滤 = {}, options = {}) ⇒查看
创建一个新的View
。
155 156 157 158 159 160 161 162 163 164 165 166 167 168 169 170 171 |
# File 'build/Ruby-driver-v 2.19 /lib/mongo/collection/view.rb', 第155行 def 初始化(集合, 筛选器 = {}, = {}) validate_doc!(筛选器) @collection = 集合 筛选器 = BSON::文档.new(筛选器) = BSON::文档.new() # 这是用户在过滤和其他修饰符中传递 $ 查询的时间 # 并排? 查询 = 筛选器.删除(:$query) # 这会使修饰符包含筛选器(如果筛选器不是 # 通过 $query 给出,但可能是作为顶级键 # 下游代码会忽略修饰符中的非修饰键吗? modifiers = 筛选器.合并(merge)(.删除(:modifiers) || {}) @filter = (查询 || 筛选器).冻结 @options = 操作::find::生成器::Modifiers.(modifiers).合并!().冻结 end |
实例属性详细信息
# collection =" Collection " (只读)
返回要查询的Collection
。
56 57 58 |
# File 'build/Ruby-driver-v 2.19 /lib/mongo/collection/view.rb', 第56行 def 集合 @collection end |
# filter ⇒ Hash (readonly)也称为:选择器
返回查询过滤。
59 60 61 |
# File 'build/Ruby-driver-v 2.19 /lib/mongo/collection/view.rb', 第59行 def 筛选器 @filter end |
实例方法详细信息
# == (other) ⇒ true , false也称为: eql?
比较两个View
对象。
86 87 88 89 90 91 |
# File 'build/Ruby-driver-v 2.19 /lib/mongo/collection/view.rb', 第86行 def ==(其他) return false 除非 其他.is_a?(查看) 集合 == 其他.集合 && 筛选器 == 其他.筛选器 && == 其他. end |
#哈希⇒整数
View
的哈希值由集合命名空间、选项哈希和筛选器哈希组成。
103 104 105 |
# File 'build/Ruby-driver-v 2.19 /lib/mongo/collection/view.rb', 第103行 def 哈希 [ 集合.namespace, .哈希, 筛选器.哈希 ].哈希 end |
#检查⇒ string
获取 View
的人类可读string表示形式。
181 182 183 184 |
# File 'build/Ruby-driver-v 2.19 /lib/mongo/collection/view.rb', 第181行 def 检查 " #<Mongo::Collection::View:0 x #{ object_id} 命名空间 =' #{ 集合 .namespace} ' " + " @filter = #{ 过滤 . to_s } @options= #{ . to_s } > " end |
# write_concern ⇒ Mongo::WriteConcern
获取此View
上的写关注(write concern)。
194 195 196 |
# File 'build/Ruby-driver-v 2.19 /lib/mongo/collection/view.rb', 第194行 def write_concern writeConcern.获取([:write_concern] || [:write] || 集合.write_concern) end |