クラス: Mongoid::関連付け::参照::Eager::Base

継承:
オブジェクト
  • オブジェクト
すべて表示
定義:
build/mongoid- 8.1 /lib/mongoid/asaction/referenced/erager.rb

Overview

早期ロード プリロード関数の基本クラス。

既知のサブクラスを直接確認

BelongsTo::EagerHasAndBelongsToMany::EagerHasMany::EagerHasOne::Eager

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

コンストラクターの詳細

#初期化(関連付け、 Docs ) =ベース

早期ロード クラスをインスタンス化します。

例:

早期ロード プリローダーに属する新しい を作成します。

BelongsTo.new(association, parent_docs)

パラメーター:

  • 関連付け 配列<関連付け>

    早期負荷への関連付け

  • docs 配列 <ドキュメント>

    関連付けをプリロードするドキュメント



20
21
22
23
24
ファイル 'Build/mongoid- 8.1 /lib/mongoid/asaction/referenced/erager.rb ', 行20

デフォルト 初期化(関連付け, docs)
  @関連付け = 関連付け
  @docs = docs
  @grouped_docs = {}
end

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

#runArray

プリローダーを実行します。

例:

関連付けをドキュメントにプリロードします。

loader.run

次の値を返します。

  • 配列

    指定されたドキュメントの一覧。



32
33
34
35
36
37
38
39
ファイル 'Build/mongoid- 8.1 /lib/mongoid/asaction/referenced/erager.rb ', 行32

デフォルト 実行する
  @loaded = []
  一方 shift_関連付け
    プリロード
    @loaded < @docs.コレクション { |d| d.送信(@関連付け.name) 場合 d.respond_to?(@関連付け.name) }
  end
  @loaded.平面
end