モジュール: Mongoid::Attributes::埋め込み

次による拡張機能。
Embedded
次のドキュメントに含まれます。
Embedded
定義:
lib/mongoid/attributes/ embedded.rb

Overview

埋め込み属性を操作するためのユーティリティ モジュール。

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

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

走査(属性、パス)=オブジェクト | nil

ドット表記で埋め込み値または属性のサブセットを取得します。

例:

ドット表記で埋め込み値を取得します。

Embedded.traverse({ 'name' => { 'en' => 'test' } }, 'name.en')
#=> 'test'

パラメーター:

  • 属性 ハッシュ

    ドキュメント属性。

  • path ( string )

    ドット表記 string。

次の値を返します。

  • ( Object | nil )

    指定されたパスにある属性、またはパスが存在しない場合は nil 。



20
21
22
23
24
25
26
27
28
29
30
31
# ファイル 'lib/mongoid/attributes/ embedded.rb' は、 20行

デフォルト 走査(属性, path)
  path.分裂('.'). 行う |キー|
    break 場合 属性.nil?

    属性 = 場合 属性.試す(:key?, キー)
                   属性[キー]
                 elsif 属性.respond_to?(:各) & & キー.一致するかどうか(/\A\d+\z/)
                   属性[キー.to_i]
                 end
  end
  属性
end