クラス: Mongoid::関連付け::埋め込み::埋め込みIn::Proxy

継承:
1 つの
  • オブジェクト
すべて表示
定義:
lib/mongoid/関連付け/ embedded/ embedded_in/proxy.rb

Overview

embedded_in 関連付けの透過的なプロキシ。 このクラスのインスタンスは、子ドキュメントで関連付け getter メソッドを呼び出すときに返されます。 このクラスは Mongoid::関連付け::Proxy から継承し、そのメソッドのほとんどを関連付けのターゲット、つまり親ドキュメントに転送します。

定数の概要

プロキシから継承された定数

プロキシ::KEEP

インスタンス属性の概要

プロキシから継承された属性

#_association, #_base, #_target

クラスメソッドの概要を折りたたむ

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

Oneから継承されたメソッド

#__e ロール

プロキシから継承されたメソッド

apply_ordering#extend_proxies#klas#reset_unloaded#subAtlas

マーシャリング可能なに含まれるメソッド

#merger_dump#merger_load

コンストラクターの詳細

#初期化(ベース、ターゲット、関連付け) =========================================================================================================

新しい embedded_in 関連付けをインスタンス化します。

例:

新しい関連付けを作成します。

Association::Embedded::EmbeddedIn.new(person, address, association)

パラメーター:



24
25
26
27
28
29
# ファイル 'lib/mongoid/関連付け/ embedded/ embedded_in/proxy.rb' の場合、行24

デフォルト 初期化(ベース, ターゲット, 関連付け)
  スーパー 行う
    characters_one(_ target)
    bind_one
  end
end

クラスメソッドの詳細

早期_loader (関連付け、 Docs ) = Mongoid::関連付け::埋め込み::Eager

この関連付けの早期ローダーを返します。

パラメーター:

  • 関連付け 配列未満Mongoid >

    早期ロードする関連付け

  • docs 配列未満Mongoid >

    指定された関連付けを持つ親ドキュメントで、早期にロードされたドキュメントを格納する必要があります。

次の値を返します。



95
96
97
# ファイル 'lib/mongoid/関連付け/ embedded/ embedded_in/proxy.rb' の場合、行95

デフォルト Bearer_loader(関連付け, docs)
  より量.新着情報(関連付け, docs)
end

埋め込み = true

関連付けが埋め込みである場合は true を返します。 この場合は常に true 。

例:

この関連付けは埋め込まれていますか。

Association::Embedded::EmbeddedIn.embedded?

次の値を返します。

  • ( true )

    true。



106
107
108
# ファイル 'lib/mongoid/関連付け/ embedded/ embedded_in/proxy.rb' の場合、行106

デフォルト 埋め込み
  true
end

path (ドキュメント)==ルート

指定されたドキュメントのパス計算子を取得します。

例:

パス 計算子を取得します。

Proxy.path(document)

パラメーター:

次の値を返します。

  • ルート

    ルート アトミック パス 計算子。



118
119
120
# ファイル 'lib/mongoid/関連付け/ embedded/ embedded_in/proxy.rb' の場合、行118

デフォルト path(ドキュメント)
  Mongoid::アトミック::パス::ルート.新着情報(ドキュメント)
end

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

置換(置換)=ドキュメント| nil

関連付け内の既存のドキュメントを、指定されたターゲット ドキュメントに置き換えます。

例:

新しいドキュメントを置き換えます。

person.name.substitute(new_name)

パラメーター:

  • replacement ドキュメント| ハッシュ

    ターゲットを置き換えるドキュメント。

次の値を返します。

  • (Document | nil)

    の関連付けまたは nil は nil です。



40
41
42
43
44
45
46
47
48
49
50
51
# ファイル 'lib/mongoid/関連付け/ embedded/ embedded_in/proxy.rb' の場合、行40

デフォルト replacement(replacement)
  unbind_one
  ただし、 replacement
    _base.削除 場合 永続的かどうか
    return nil
  end
  _base.new_record = true
  replacement = 工場.構築(klass, replacement) 場合 replacement.is_a?(::ハッシュ)
  自己._ target = replacement
  bind_one
  自己
end