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

継承:
オブジェクト
  • オブジェクト
すべて表示
次のことが含まれます。
バインディング可能
定義:
build/mongoid- 8.1 /lib/mongoid/asaction/ embedded/ embedded_in/bining.rb

Overview

embedded_in 関連付け用の バインディング オブジェクト。

インスタンス属性の概要

バインディング可能なに含まれる属性

#_association, #_base, #_target

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

バインド可能な に含まれるメソッド

バインディング初期化

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

# bind_one =オブジェクト

基本オブジェクトを関連付けの逆にバインドします。 したがって、両方の側で実際のオブジェクト自体を参照します。

この場合、ドキュメント自体と逆オブジェクトの関連付けメタデータが設定されます。

例:

ドキュメントをバインドします。

name.person.bind(:continue => true)
name.person = Person.new


21
22
23
24
25
26
27
28
29
30
31
32
33
次のファイル「 build/mongoid- 8.1 /lib/mongoid/as associated/ embedded/ embedded_in/bining.rb 」、 行21

デフォルト bind_one
  バインディング 行う
    checkpoint_polytric_inverses.(_ target)
    _base._関連付け = _関連付け.逆_関連付け(_ target) ただし、 _base._関連付け
    _base.親化(_ target)
    場合 _base.embedded_many?
      _ target.do_or_do_not(_関連付け.(_ target)).プッシュ(_base)
    else
      排除_関連付け(_ target)
      _ target.do_or_do_not(_関連付け.inverse_setter(_ target), _base)
    end
  end
end

#unbind_one =オブジェクト

参照を nil に設定することで、基本オブジェクトとその逆のバインドを解除します。

例:

ドキュメントのバインドを解除します。

name.person.unbind(:continue => true)
name.person = nil


41
42
43
44
45
46
47
48
49
次のファイル「 build/mongoid- 8.1 /lib/mongoid/as associated/ embedded/ embedded_in/bining.rb 」、 行41

デフォルト unbind_one
  バインディング 行う
    場合 _base.embedded_many?
      _ target.do_or_do_not(_関連付け.(_ target)).削除(_base)
    else
      _ target.do_or_do_not(_関連付け.inverse_setter(_ target), nil)
    end
  end
end