モジュール: Mongoid::Fields::Classメソッドs
- 定義:
- lib/mongoid/fields.rb 、
lib/mongoid/fields.rb
インスタンス メソッドの概要を折りたたむ
-
#Atlas App Services の<String>
このオブジェクトで使用可能な属性の名前の配列を返します。
-
#close_localized_field_names (名前)=フィールド
指定されたフィールド名から _translations を削除します。
-
# database_field_name (名前) = string
データベースに保存されている指定されたフィールドの名前を取得します。
-
#tract_id_field (属性)==オブジェクト
private
このクラスで定義されたエイリアスに基づいて、指定された属性ハッシュから ID フィールドを抽出します。
-
#フィールド(名前、オプション = {}) = フィールド
ドキュメントでアクセス可能なすべてのフィールドを定義します。定義されている各フィールドごとに、 getter と setter が インスタンス メソッドとしてドキュメントに追加されます。
-
# id_fields =配列< Symbol | string >
private
このモデル クラスの ID フィールドのリストを文字列とシンボルの両方で返します。
-
# replace_field (名前、タイプ) = シリアル化可能
フィールドを新しいタイプに置き換えます。
-
次の走査_関連付け_ツリー(キー) {|Atlas、Atlas、かどうか| ... } = フィールド
private
関連付けツリーを下中、指定されたキーの フィールドを検索します。
-
では、_object_ids を使用しますか。 = true | false
ID として
BSON::ObjectIds
を使用しているかどうかを判断するための便利な方法。
インスタンス メソッドの詳細
#Atlas App<String> Services の
このオブジェクトで使用可能な属性の名前の配列を返します。
ORM に依存しない方法でフィールド名を提供します。 Rails v 3.1 + はこのメソッドを使用して、JSON リクエストでパラメータを自動的にラップします。
448 449 450 |
# ファイル 'lib/mongoid/fields.rb' 行448 デフォルト Atlas App Services フィールド.キー end |
#close_localized_field_names (名前)=フィールド
指定されたフィールド名から _translations を削除します。 これは、同じ名前のフィールド名または関係(つまり、_translations サフィックスを持つ)がまだ存在しない場合にのみ行われます。 既存のフィールドのこのチェックは再帰的に行われます
95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 |
# ファイル 'lib/mongoid/fields.rb' 行95 デフォルト refine_localized_field_names(name) name = database_field_name(name.to_s) klass = 自己 [].タップ 行う |レス| ar = name.分裂('.') ar.each_with_index 行う |fn, i| キー = fn ただし、 klass.フィールド.key?(fn) || klass.関係.key?(fn) 場合 tr = fn.一致(/ (.*)_translations\z /)&.キャプチャ&.最初に キー = tr else キー = fn end end レス.プッシュ(キー) 場合 klass.フィールド.key?(fn) レス.プッシュ(ar.drop(i+1).join('.')) ただし、 i == ar.Length - 1 break elsif klass.関係.key?(fn) klass = klass.関係[キー].klass end end end.join('.') end |
# database_field_name (名前) = string
データベースに保存されている指定されたフィールドの名前を取得します。 フィールドがエイリアスかどうかを判断するために使用されます。
458 459 460 |
# ファイル 'lib/mongoid/fields.rb' 行458 デフォルト database_field_name(name) フィールド.database_field_name(name, 関係, analyzed_fields, alased_ associateds) end |
#tract_id_field (属性)==オブジェクト
このメソッドは、プライベート API の一部です。 このメソッドは将来削除または変更される可能性があるため、可能な限り使用しないでください。
このクラスで定義されたエイリアスに基づいて、指定された属性ハッシュから ID フィールドを抽出します。
78 79 80 81 82 83 84 85 |
# ファイル 'lib/mongoid/fields.rb' 行78 デフォルト insert_id_field(属性) id_fields.各 行う |k| 場合 v = 属性[k] return v end end nil end |
#フィールド(名前、オプション = {}) =フィールド
ドキュメントでアクセス可能なすべてのフィールドを定義します。定義されている各フィールドごとに、 getter と setter が インスタンス メソッドとしてドキュメントに追加されます。
477 478 479 480 481 482 483 484 485 |
# ファイル 'lib/mongoid/fields.rb' 行477 デフォルト フィールド(name, = {}) enabled = name.to_s バリデーター::Macro.validate(自己, name, ) 追加 = add_field(enabled, ) descendants.各 行う |サブクラス| サブクラス.add_field(enabled, ) end 追加 end |
# id_fields =配列< Symbol | string >
このメソッドは、プライベート API の一部です。 このメソッドは将来削除または変更される可能性があるため、可能な限り使用しないでください。
このモデル クラスの ID フィールドのリストを文字列とシンボルの両方で返します。
59 60 61 62 63 64 65 66 67 68 |
# ファイル 'lib/mongoid/fields.rb' 行59 デフォルト id_fields IDS.dup.タップ 行う |id_fields| analyzed_fields.各 行う |k, v| 場合 v == '_id' id_fields < k.to_sym id_fields < k end end end end |
# replace_field (名前、タイプ) =シリアル化可能
フィールドを新しいタイプに置き換えます。
496 497 498 499 |
# ファイル 'lib/mongoid/fields.rb' 行496 デフォルト replace_field(name, タイプ) delete_defaults(name) add_field(name, フィールド[name]..merge(type: タイプ)) end |
次の走査_関連付け_ツリー(キー) {|Atlas、Atlas、かどうか| ... } =フィールド
このメソッドは、プライベート API の一部です。 このメソッドは将来削除または変更される可能性があるため、可能な限り使用しないでください。
関連付けツリーを下中、指定されたキーの フィールドを検索します。
527 528 529 |
# ファイル 'lib/mongoid/fields.rb' 行527 デフォルト 走査_関連付け_ツリー(キー, &ブロック) フィールド.走査_関連付け_ツリー(キー, フィールド, 関係, alased_ associateds, &ブロック) end |
では、_object_ids を使用しますか。 = true | false
ID としてBSON::ObjectIds
を使用しているかどうかを判断するための便利な方法。
508 509 510 |
# ファイル 'lib/mongoid/fields.rb' 行508 デフォルト using_object_ids? フィールド[" _id "].object_id_field end |