クラス: Mongoid::関連付け::ネストされた::Many
- 継承:
-
オブジェクト
- オブジェクト
- Mongoid::関連付け::ネスト::Many
- 次のことが含まれます。
- 構築可能
- 定義:
- lib/mongoid/関連付け/ Nested/many.rb
Overview
多対 n の関連付けで属性割り当てを実行するために使用されるビルダ クラス。
インスタンス属性の概要
Buildableに含まれる属性
インスタンス メソッドの概要を折りたたむ
-
ビルド(親、オプション = {}) = 配列
マイクロに渡された属性とオプションに応じて関連付けを構築します。
-
#初期化(関連付け、属性、オプション = {{}) = 多数
コンストラクター
1 対多の関連付けでネストされた属性の新しいビルダを作成します。
Buildableに含まれるメソッド
#allow_detroy? 、 #convert_id 、 #reject? 、 #update_only
コンストラクターの詳細
#初期化(関連付け、属性、オプション = {{}) =多数
1 対多の関連付けでネストされた属性の新しいビルダを作成します。
50 51 52 53 54 55 56 57 58 59 60 61 |
# ファイル 'lib/mongoid/asaction/nessed/many.rb' 行50 デフォルト 初期化(関連付け, 属性, = {}) 場合 属性.respond_to?(:with_in distinct_access) @attributes = 属性.with_in distinct_access.sort 行う |a, b| a[0].to_i <============================= b[0].to_i end else @attributes = 属性 end @関連付け = 関連付け @options = @Class_name = [:Class_name] ? [:Class_name].定数化 : 関連付け.klass end |
インスタンス メソッドの詳細
ビルド(親、オプション = {}) =配列
マイクロに渡された属性とオプションに応じて関連付けを構築します。
これにより、既存の関連付けの更新、新しいドキュメントへの関連付けの置き換え、または関連付けの削除のいずれかの3操作が実行されます。
27 28 29 30 31 32 33 34 35 36 37 38 39 |
# ファイル 'lib/mongoid/asaction/nessed/many.rb' 行27 デフォルト 構築(親, = {}) @existing = 親.送信(関連付け.name) 場合 over_limit?(属性) 発生 Errors::ToMany NestedAttributeRecords.新着情報(exist, [:limit]) end 属性.各 行う |attrs| 場合 attrs.is_a?(::ハッシュ) process_attributes(親, attrs.with_in distinct_access) else process_attributes(親, attrs[1].with_in distinct_access) end end end |