モジュール: Mongoid::Persistable::Pullable

次による拡張機能。
ActiveSupport::Concern
次のドキュメントに含まれます。
Mongoid::Persistable
定義:
lib/mongoid/persistable/pullable.rb

Overview

$pull および $pullAll 操作の動作を定義します。

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

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

#pull(pulls) ⇒ Document

注:

重複する値が見つかった場合は、すべてプルされます。

指定された配列から単一の値を取得します。

例:

配列から値を取得します。

document.pull(names: "Jeff", levels: 5)

パラメーター:

  • プル ハッシュ

    フィールドと値はペアをプルします。

次の値を返します。



21
22
23
24
25
26
27
28
29
ファイル 'lib/mongoid/persistable/pullable.rb' は、 21行を

デフォルト プル(プル)
  準備_アトミック_操作 行う |ops|
    Process_アトミック_操作(プル) 行う |フィールド, 価値|
      (送信(フィールド) || []).削除(価値)
      ops[アトミック_attribute_name(フィールド)] = 価値
    end
    { " $pull " => ops }
  end
end

#pull_all(pulls) ⇒ Document

指定された配列フィールドから複数の値を取得します。

例:

配列から値を取得します。

document.pull_all(names: [ "Jeff", "Bob" ], levels: [ 5, 6 ])

パラメーター:

  • プル ハッシュ

    はすべての操作をプルします。

次の値を返します。



39
40
41
42
43
44
45
46
47
48
ファイル 'lib/mongoid/persistable/pullable.rb' は、 39行を

デフォルト pull_all(プル)
  準備_アトミック_操作 行う |ops|
    Process_アトミック_操作(プル) 行う |フィールド, 価値|
      exist = 送信(フィールド) || []
      価値.{ |価値| exist.削除(価値) }
      ops[アトミック_attribute_name(フィールド)] = 価値
    end
    { " $pullAll " => ops }
  end
end