クラス: Mongoid::Fields::standard

継承:
オブジェクト
  • オブジェクト
すべて表示
次による拡張機能。
転送可能
定義:
lib/mongoid/fields/standard.rb

Overview

Mongoid が永続化する BSON ドキュメントに一貫したスキーマ構造を強制するために使用される標準フィールド定義(名前、タイプなど)を表します。

既知のサブクラスを直接確認

暗号化foreignKeyLocalized

インスタンス属性の概要を折りたたむ

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

コンストラクターの詳細

#初期化(名前、オプション = {}) =標準

名前と任意の追加オプションを指定して新しいフィールドを作成します。

例:

新しいフィールド を作成します。

Field.new(:name, :type => String)

パラメーター:

  • options ハッシュ (デフォルトは{}です)

    フィールド オプション。

オプション ハッシュ( options ):

  • :type クラス

    フィールドの クラス。

  • :default オブジェクト

    フィールドのデフォルト値。

  • : labels string

    フィールドのラベル。



71
72
73
74
75
76
77
78
79
80
81
82
83
# ファイル 'lib/mongoid/fields/standard.rb' は、 71行

デフォルト 初期化(name, options = {})
  @name = name
  @options = options
  @ labels = options[: labels]
  @default_val = options[:default]

  # @todo: 継続的に、 4.0の API を変更して、 クラスをパラメーターとして取るようにします。
  # これは を変更せずに $ 2529に一時的に対処します
  # コンストラクター署名。
  場合 default_val.respond_to?(: 呼び出し)
    refine_default_method(options[:klass])
  end
end

インスタンス属性の詳細

# default_val 詳しくは、オブジェクト

ドキュメント内の定義済みフィールドの動作を定義します。 インスタンス変数のリーダーを設定します。



15
16
17
# ファイル 'lib/mongoid/fields/standard.rb' は、 15行

デフォルト default_val
  @default_val
end

#ラベル=オブジェクト

ドキュメント内の定義済みフィールドの動作を定義します。 インスタンス変数のリーダーを設定します。



15
16
17
# ファイル 'lib/mongoid/fields/standard.rb' は、 15行

デフォルト ラベル
  @ labels
end

#=オブジェクト

ドキュメント内の定義済みフィールドの動作を定義します。 インスタンス変数のリーダーを設定します。



15
16
17
# ファイル 'lib/mongoid/fields/standard.rb' は、 15行

デフォルト name
  @name
end

#オプション=オブジェクト

ドキュメント内の定義済みフィールドの動作を定義します。 インスタンス変数のリーダーを設定します。



15
16
17
# ファイル 'lib/mongoid/fields/standard.rb' は、 15行

デフォルト options
  @options
end

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

#add_atomic_changes (document, name, key, Mods, new, old) =オブジェクト

このタイプのサイズ変更可能なフィールドにアトミックな変更を追加します。

field.add_atomic_changes(doc, key , {}, [], [])

例:

アトミックな変更を追加します。

パラメーター:

  • ドキュメント ドキュメント

    追加するドキュメント。

  • name ( string )

    フィールドの名前。

  • キー ( string )

    フィールドのアトミックなロケーション。

  • 修飾子 ハッシュ

    現在の変更内容。

  • 新着情報 配列

    追加する新しい要素。

  • old 配列

    古い要素が削除されます。



30
31
32
# ファイル 'lib/mongoid/fields/standard.rb' は、 30行

デフォルト add_aごとの変更(ドキュメント, name, キー, 修飾子, 新着情報, old)
  修飾子[キー] = 新着情報
end

#associationMetadata

フィールドが外部キーの場合、フィールドのメタデータを取得します。

例:

メタデータを取得します。

field.

次の値を返します。

  • (Metadata)

    関連付けメタデータ。



121
122
123
# ファイル 'lib/mongoid/fields/standard.rb' は、 121行

デフォルト 関連付け
  @関連付け ||= options[:関連付け]
end

# eval_default (ドキュメント) =オブジェクト

デフォルト値を評価して返します。 必要に応じて、直列化、プロシージャ呼び出し、重複を処理します。

例:

デフォルト値を評価します。

field.eval_default(document)

パラメーター:

次の値を返します。

  • オブジェクト

    シリアル化されたデフォルト値。



43
44
45
46
47
48
49
# ファイル 'lib/mongoid/fields/standard.rb' は、 43行

デフォルト eval_default(doc)
  場合 フィールド = doc.__selected_fields
    enabled_default(doc) 場合 含まれますか(フィールド)
  else
    enabled_default(doc)
  end
end

は、 foreign_key をサポートしていますか。 = true | false

このフィールドは外部キーか?

例:

フィールドは外部キーかどうか

field.foreign_key?

次の値を返します。

  • true | false

    フィールドが外部キーの場合。



57
58
59
# ファイル 'lib/mongoid/fields/standard.rb' は、 57行

デフォルト foreign_key?
  false
end

#遅延= true | false

このフィールドは遅延デフォルト評価を行いますか。

例:

フィールドは遅延していますか。

field.lazy?

次の値を返します。

  • true | false

    フィールドが遅延されている場合。



91
92
93
# ファイル 'lib/mongoid/fields/standard.rb' は、 91行

デフォルト lazy?
  false
end

# localize_current? = true | false

ローカライズされたフィールドは存在することを強制しますか。

例:

ローカライズされたフィールドは存在することを強制しますか。

field.localize_present?

次の値を返します。

  • true | false

    フィールドが存在を強制する場合、。



111
112
113
# ファイル 'lib/mongoid/fields/standard.rb' は、 111行

デフォルト localize_presentation?
  false
end

#はローカライズされていますか? = true | false

フィールドはローカライズされていますか?

例:

フィールドはローカライズされていますか?

field.localized?

次の値を返します。

  • true | false

    フィールドがローカライズされている場合。



101
102
103
# ファイル 'lib/mongoid/fields/standard.rb' は、 101行

デフォルト ローカル化されていますか?
  false
end

オブジェクト_id_field = true | false

フィールドは BSON::ObjectId かどうか

例:

フィールドは BSON::ObjectId かどうか

field.object_id_field?

次の値を返します。

  • true | false

    フィールドが BSON::ObjectId の場合。



131
132
133
# ファイル 'lib/mongoid/fields/standard.rb' は、 131行

デフォルト object_id_field
  @object_id_field ||= (タイプ == BSON::ObjectId)
end

#pre_processed? = true | false

フィールドはデフォルト値を事前に処理しますか?

例:

フィールドはデフォルトを事前処理しますか?

field.pre_processed?

次の値を返します。

  • true | false

    フィールドのデフォルトが事前処理されている場合。



141
142
143
144
# ファイル 'lib/mongoid/fields/standard.rb' は、 141行

デフォルト pre_processed?
  @pre_processed ||=
    (options[:pre_processed] || (default_val & & !default_val.is_a?(::Proc)))
end

#=クラス

このフィールドの型を取得します - クラス名から推測される。

例:

型を取得します。

field.type

次の値を返します。

  • クラス

    クラスの名前。



152
153
154
# ファイル 'lib/mongoid/fields/standard.rb' は、 152行

デフォルト タイプ
  @type ||= options[:type] || オブジェクト
end