モジュール: Mongoid::Contextual::アトミック

定義:
build/mongoid- 8.1 /lib/mongoid/contextual/aomic.rb

インスタンス メソッドの概要を折りたたむ

インスタンス メソッドの詳細

# add_each_to_set (adds) = nil

一致するドキュメントに対してアトミックな $addToSet/$each を実行します。

例:

セットに値を追加します。

context.add_each_to_set(members: ["Dave", "Bill"], genres: ["Electro", "Disco"])

パラメーター:

  • 追加 ハッシュ

    の操作です。

次の値を返します。

  • (nil)

    Nil.



27
28
29
ファイル 'Build/mongoid- 8.1 /lib/mongoid/contextual/aomic.rb', 行27

デフォルト add_each_to_set(追加)
  表示.update_many("$addToSet" => collection_each_operations(追加))
end

#add_to_set(adds) ⇒ nil

一致するドキュメントに対してアトミック $addToSet を実行します。

例:

セットに値を追加します。

context.add_to_set(members: "Dave", genres: "Electro")

パラメーター:

  • 追加 ハッシュ

    の操作です。

次の値を返します。

  • (nil)

    Nil.



15
16
17
ファイル 'Build/mongoid- 8.1 /lib/mongoid/contextual/aomic.rb', 行15

デフォルト add_to_set(追加)
  表示.update_many("$addToSet" => collection_operations(追加))
end

#bit(bits) ⇒ nil

一致するドキュメントに対してアトミックな $bit 操作を実行します。

例:

ビットごとの opを実行します。

context.bit(likes: { and: 14, or: 4 })

パラメーター:

  • ビット ハッシュ

    の操作です。

次の値を返します。

  • (nil)

    Nil.



39
40
41
ファイル 'Build/mongoid- 8.1 /lib/mongoid/contextual/aomic.rb', 行39

デフォルト ビット(ビット)
  表示.update_many(" $bit " => collection_operations(ビット))
end

#inc(incs) ⇒ nil

一致するドキュメントに対してアトミックな $inc 操作を実行します。

例:

アトミックなインクリメントを実行します。

context.inc(likes: 10)

パラメーター:

  • incs ハッシュ

    の操作です。

次の値を返します。

  • (nil)

    Nil.



51
52
53
ファイル 'Build/mongoid- 8.1 /lib/mongoid/contextual/aomic.rb', 行51

デフォルト 含む(incs)
  表示.update_many(" $inc " => collection_operations(incs))
end

#pop(pops) ⇒ nil

一致するドキュメントに対してアトミックな $pop 操作を実行します。

例:

一致する最初の値を出力します。

context.pop(members: -1)

一致の最後の値をポップします。

context.pop(members: 1)

パラメーター:

  • pops ハッシュ

    の操作です。

次の値を返します。

  • (nil)

    Nil.



66
67
68
ファイル 'Build/mongoid- 8.1 /lib/mongoid/contextual/aomic.rb', 行66

デフォルト ポップ(pops)
  表示.update_many("$pop" => collection_operations(pops))
end

#pull(pulls) ⇒ nil

注:

式のプルはまだサポートされていません。

一致するドキュメントに対してアトミックな $pull 操作を実行します。

例:

一致から値を取得します。

context.pull(members: "Dave")

パラメーター:

  • プル ハッシュ

    の操作です。

次の値を返します。

  • (nil)

    Nil.



80
81
82
ファイル 'Build/mongoid- 8.1 /lib/mongoid/contextual/aomic.rb', 行80

デフォルト プル(プル)
  表示.update_many(" $pull " => collection_operations(プル))
end

#pull_all(pulls) ⇒ nil

一致するドキュメントに対してアトミックな $pullAll 操作を実行します。

例:

一致から一致するすべての値を取得します。

context.pull_all(:members, [ "Alan", "Vince" ])

パラメーター:

  • プル ハッシュ

    の操作です。

次の値を返します。

  • (nil)

    Nil.



92
93
94
ファイル 'Build/mongoid- 8.1 /lib/mongoid/contextual/aomic.rb', 行92

デフォルト pull_all(プル)
  表示.update_many(" $pullAll " => collection_operations(プル))
end

#push(pushes) ⇒ nil

一致するドキュメントに対してアトミックな $push 操作を実行します。

例:

一致するDocsに値をプッシュします。

context.push(members: "Alan")

パラメーター:

  • プッシュ ハッシュ

    の操作です。

次の値を返します。

  • (nil)

    Nil.



104
105
106
ファイル 'Build/mongoid- 8.1 /lib/mongoid/contextual/aomic.rb', 行104

デフォルト プッシュ(プッシュ)
  表示.update_many(" $push " => collection_operations(プッシュ))
end

#push_all (プッシュ)= nil

一致するドキュメントに対してアトミックな $push/$each 操作を実行します。

例:

一致するDocsに値をプッシュします。

context.push_all(members: [ "Alan", "Fletch" ])

パラメーター:

  • プッシュ ハッシュ

    の操作です。

次の値を返します。

  • (nil)

    Nil.



116
117
118
ファイル 'Build/mongoid- 8.1 /lib/mongoid/contextual/aomic.rb', 行116

デフォルト push_all(プッシュ)
  表示.update_many(" $push " => collection_each_operations(プッシュ))
end

# rename (名前変更) = nil

一致するドキュメントのフィールドのアトミック $rename を実行します。

例:

一致するドキュメントのフィールドの名前を変更します。

context.rename(members: :artists)

パラメーター:

  • renames ハッシュ

    の操作です。

次の値を返します。

  • (nil)

    Nil.



128
129
130
131
132
133
134
ファイル 'Build/mongoid- 8.1 /lib/mongoid/contextual/aomic.rb', 行128

デフォルト rename(renames)
  操作 = renames.inject({}) 行う |ops, (old_name, new_name)|
    ops[old_name] = new_name.to_s
    ops
  end
  表示.update_many(" $rename " => collection_operations(操作))
end

#set(sets) ⇒ nil

一致するドキュメントに対してフィールドのアトミック $set を実行します。

例:

一致に フィールド値を設定します。

context.set(name: "Depeche Mode")

パラメーター:

  • セット ハッシュ

    の操作です。

次の値を返します。

  • (nil)

    Nil.



144
145
146
ファイル 'Build/mongoid- 8.1 /lib/mongoid/contextual/aomic.rb', 行144

デフォルト セット(セット)
  表示.update_many(" $set " => collection_operations(セット))
end

#unset(*args) ⇒ nil

一致するドキュメントのフィールドに対してアトミックな $unset を実行します。

例:

一致の フィールドの設定を解除します。

context.unset(:name)

パラメーター:

  • *args ( [ string | Symbol | Array< string | Symbol>|Hash ]... )

    設定解除するフィールドの名前。 ハッシュが指定されている場合は、各キーの値が nil または false であっても、そのキーが使用されます。

次の値を返します。

  • (nil)

    Nil.



159
160
161
162
163
164
ファイル 'Build/mongoid- 8.1 /lib/mongoid/contextual/aomic.rb', 行159

デフォルト 設定解除(*args)
  フィールド = args.map { |a| a.is_a?(ハッシュ) ? a.キー : a }
               .__find_args__
               .map { |f| [database_field_name(f), true] }
  表示.update_many(" $unset " => ハッシュ[フィールド])
end