クラス: Mongoid::関連付け::Many
- 次による拡張機能。
- 転送可能
- 次のことが含まれます。
- Enumerable
- 定義:
- build/mongoid- 8.1 /lib/mongoid/asaction/many.rb
Overview
これは、すべての多対 1 および多対多の関連付けプロキシのスーパークラスです。
既知のサブクラスを直接確認
インスタンス属性の概要
プロキシから継承された属性
#_association, #_base, #_target
インスタンス メソッドの概要を折りたたむ
-
#空白= true | false
関連付けは空であり、
-
# create (Attributes = nil, type = nil, &streams) = nil, &lock) = ドキュメント
参照が多くある関連付けに新しいドキュメントを作成します。
-
#作成します。 (attributes = nil, type = nil, &lock) = ドキュメント
参照が多くある関連付けに新しいドキュメントを作成します。
-
# find_or_create_by (attrs = {{}、type = nil、 &stream) = ドキュメント = ドキュメント
条件を指定された最初のドキュメントを検索するか、指定された条件で新しいドキュメントを作成します。
-
#find_or_create_by (attrs = {{}、type = nil、 &lock) = ドキュメント
条件を指定された最初のドキュメントを検索するか、指定された条件で新しいドキュメントを作成します。
-
find_or_initialize_by (attrs = {{}、type = nil、 &stream) = ドキュメント = ドキュメント
条件を指定された最初の
Document
を検索するか、指定された条件で新しいドキュメントをインスタンス化します。 -
#nil? ⇒ false
このプロキシは nil になることはできません。
-
response_to? (name, include_private = false) = true | false
メソッド_欠落はオーバーライドされるため、これもオーバーライドする必要があります。
-
スコープの# = 基準: 基準
これは、関連付けの基準へのパブリック アクセスです。
-
#serializable_hash(options = {}) ⇒ Hash
ActiveModel の JSON および XML シリアライザーで使用される、ドキュメントをシリアル化可能なハッシュとして取得します。
-
スコープが設定されていない = Criteria
デフォルトのスコープが適用されていない埋め込みドキュメントの基準を取得します。
プロキシから継承されたメソッド
apply_ordering 、 #extend_proxies 、#init 、# klas 、# reset_unloaded 、 #置換可能
マーシャリング可能なに含まれるメソッド
インスタンス メソッドの詳細
#空白= true | false
関連付けは空になっていますか。
21 22 23 |
ファイル 'Build/mongoid- 8.1 /lib/mongoid/asaction/many.rb ', 行21 デフォルト blank? !any? end |
# create (Attributes = nil, type = nil, &streams) = nil, &lock) =ドキュメント
参照が多くある関連付けに新しいドキュメントを作成します。 親が永続化されている場合は、これによりドキュメントが保存されます。
35 36 37 38 39 40 41 42 43 |
ファイル 'Build/mongoid- 8.1 /lib/mongoid/asaction/many.rb ', 行35 デフォルト create(属性 = nil, タイプ = nil, &ブロック) 場合 属性.is_a?(::配列) 属性.map { |attrs| create(attrs, タイプ, &ブロック) } else doc = 構築(属性, タイプ, &ブロック) _base.永続化された場合 ? doc.保存 : resume_unsaved(doc) doc end end |
#作成します。 (attributes = nil, type = nil, &lock) =ドキュメント
参照が多くある関連付けに新しいドキュメントを作成します。 これにより、親が永続化されている場合はドキュメントが保存され、検証に失敗した場合はエラーが発生します。
58 59 60 61 62 63 64 65 66 67 68 69 70 71 |
ファイル 'Build/mongoid- 8.1 /lib/mongoid/asaction/many.rb ', 行58 デフォルト 作成します。(属性 = nil, タイプ = nil, &ブロック) 場合 属性.is_a?(::配列) 属性.map { |attrs| 作成します。(attrs, タイプ, &ブロック) } else doc = 構築(属性, タイプ, &ブロック) 配列(doc).各 行う |doc| doc.試す(:run_pending_colbacks) end _base.永続化された場合 ? doc.save! : resume_unsaved(doc) doc end end |
# find_or_create_by (attrs = {{}、type = nil、 &stream) = ドキュメント =ドキュメント
条件を指定された最初のドキュメントを検索するか、指定された条件で新しいドキュメントを作成します。
@param [ Hash ] attrs The attributes to search or create with.
@param [ Class ] type The optional type of document to create.
83 84 85 |
ファイル 'Build/mongoid- 8.1 /lib/mongoid/asaction/many.rb ', 行83 デフォルト find_or_create_by(attrs = {}, タイプ = nil, &ブロック) find_or(:create, attrs, タイプ, &ブロック) end |
#find_or_create_by (attrs = {{}、type = nil、 &lock) =ドキュメント
条件を指定された最初のドキュメントを検索するか、指定された条件で新しいドキュメントを作成します。 これにより検証に失敗した場合はエラーが発生します。
99 100 101 |
ファイル 'Build/mongoid- 8.1 /lib/mongoid/asaction/many.rb ', 行99 デフォルト find_or_create_by(attrs = {}, タイプ = nil, &ブロック) find_or(:createます。, attrs, タイプ, &ブロック) end |
find_or_initialize_by (attrs = {{}、type = nil、 &stream) = ドキュメント =ドキュメント
条件指定された最初のDocument
を検索するか、指定された条件で新しいドキュメントをインスタンス化します
113 114 115 |
ファイル 'Build/mongoid- 8.1 /lib/mongoid/asaction/many.rb ', 行113 デフォルト find_or_initialize_by(attrs = {}, タイプ = nil, &ブロック) find_or(: build, attrs, タイプ, &ブロック) end |
#nil? ⇒ false
このプロキシは nil になることはできません。
123 124 125 |
ファイル 'Build/mongoid- 8.1 /lib/mongoid/asaction/many.rb ', 行123 デフォルト nil? false end |
response_to? (name, include_private = false) = true | false
メソッド_欠落はオーバーライドされるため、これもオーバーライドする必要があります。
136 137 138 139 |
ファイル 'Build/mongoid- 8.1 /lib/mongoid/asaction/many.rb ', 行136 デフォルト respond_to?(name, include_private = false) [].respond_to?(name, include_private) || klass.respond_to?(name, include_private) || スーパー end |
スコープの# = 基準:基準
これは、関連付けの基準へのパブリック アクセスです。
147 148 149 |
ファイル 'Build/mongoid- 8.1 /lib/mongoid/asaction/many.rb ', 行147 デフォルト scoped 条件 end |
#serializable_hash(options = {}) ⇒ Hash
ActiveModel の JSON および XML シリアライザーで使用される、ドキュメントをシリアル化可能なハッシュとして取得します。 このオーバーライドは、:include オプションと :Exception オプションを渡して、ハッシュ内の関連付けを取得できるようにするためのものです。
165 166 167 |
ファイル 'Build/mongoid- 8.1 /lib/mongoid/asaction/many.rb ', 行165 デフォルト serializable_hash( = {}) _ target.map { |ドキュメント| ドキュメント.serializable_hash() } end |
スコープ が設定されていない = Criteria
デフォルトのスコープが適用されていない埋め込みドキュメントの基準を取得します。
176 177 178 |
ファイル 'Build/mongoid- 8.1 /lib/mongoid/asaction/many.rb ', 行176 デフォルト スコープが設定されていない 条件.スコープが設定されていない end |