类:Mongo::Operation::Update::BulkResult Private
- 包括:
- 可聚合
- 定义于:
- 构建/ruby-driver-v2.19/lib/ mongo /operation/ 更新/bulk_result.rb
Overview
此类是私有 API 的一部分。 应尽可能避免使用此类,因为它将来可能会被删除或更改。
定义在批量写入中发送更新结果时的自定义行为。
常量摘要折叠
- 已修改 =
此常量是私有 API 的一部分。 应尽可能避免使用此常量,因为它将来可能会被删除或更改。
结果中已修改Docs字段的数量。
' nModified '.冻结
- UPSERTED =
此常量是私有 API 的一部分。 应尽可能避免使用此常量,因为它将来可能会被删除或更改。
结果中更新或插入的Docs字段。
' upsert '.冻结
从Result继承的常量
Result::CURSOR 、 Result::CURSOR_ID 、 Result::FIRST_BATCH 、 Result::N 、 Result::NAMESPACE 、 Result::NEXT_BATCH 、 Result::OK 、 Result::RESULT
实例属性摘要
从Result继承的属性
#connection_description 、 #connection_global_id 、 #replies
实例方法摘要折叠
-
# n_matched ⇒ 整数
private
获取匹配的文档数。
-
# n_modified ⇒ 整数
private
获取已修改的文档数。
-
# n_upserted ⇒ 整数
private
获取已更新或插入的文档数。
-
# upserted ⇒ Array<BSON::Document>
private
获取更新或插入的文档。
从Result继承的方法
#acknowledged? 、#cluster_time、 # cursor_id、#documents、# each 、# error 、 # has_cursor_id ? , #initialize , #inspect , #labels , 命名空间 , #ok? , #operation_time , #reply , #returned_count , #snapshot_timestamp , # success ? 、 #topology_version 、 #validate! , #write_concern_error? , #liter_count
构造函数详情
该类从Mongo::Operation::Result继承了一个构造函数
实例方法详细信息
# n_matched ⇒整数
此方法是私有 API 的一部分。 您应尽可能避免使用此方法,因为它将来可能会被删除或更改。
获取匹配的文档数。
65 66 67 68 69 70 71 72 73 74 75 76 77 78 |
# File ' 构建/ruby-driver-v2.19/lib/ mongo /operation/ 更新/bulk_result.rb', 第65行 def n_matched return 0 除非 已确认? @replies.化简(reduce)(0) do |n, 回复| if upsert?(回复) 回复.文档.first[N] - n_upserted else if 回复.文档.first[N] n += 回复.文档.first[N] else n end end end end |
# n_modified ⇒整数
此方法是私有 API 的一部分。 您应尽可能避免使用此方法,因为它将来可能会被删除或更改。
获取已修改的文档数。 并不是说在混合分片集群中,对更新的调用可以返回 nModified (>= 2.6 ) 或不返回 (<= 2.4 )。 如果任何调用未返回 nModified,我们将无法报告有效的最终计数,因此请将该字段设立为零。
92 93 94 95 96 97 98 99 100 101 |
# File ' 构建/ruby-driver-v2.19/lib/ mongo /operation/ 更新/bulk_result.rb', 第92行 def n_modified return 0 除非 已确认? @replies.化简(reduce)(0) do |n, 回复| if n && 回复.文档.first[MODIFIED] n += 回复.文档.first[MODIFIED] else 0 end end end |
# n_upserted ⇒整数
此方法是私有 API 的一部分。 您应尽可能避免使用此方法,因为它将来可能会被删除或更改。
获取已更新或插入的文档数。
46 47 48 49 50 51 52 53 54 55 |
# File ' 构建/ruby-driver-v2.19/lib/ mongo /operation/ 更新/bulk_result.rb', 第46行 def n_upserted return 0 除非 已确认? @replies.化简(reduce)(0) do |n, 回复| if upsert?(回复) n += 回复.文档.first[UPSERTED].size else n end end end |
# upserted ⇒ Array<BSON::Document>
此方法是私有 API 的一部分。 您应尽可能避免使用此方法,因为它将来可能会被删除或更改。
获取更新或插入的文档。
111 112 113 114 115 116 117 118 119 |
# File ' 构建/ruby-driver-v2.19/lib/ mongo /operation/ 更新/bulk_result.rb', 第111行 def 更新或插入 return [] 除非 已确认? @replies.化简(reduce)([]) do |id, 回复| if upserted_id = 回复.文档.first[UPSERTED] id += upserted_id end id end end |