モジュール: Mongoid::Attributes::Classメソッドs

定義:
build/mongoid- 8.1 /lib/mongoid/attributes.rb

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

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

# alas_attribute (名前、元の) =オブジェクト

指定された名前を元のフィールドにエイリアスします。 これにより、エイリアス getter、setter、有無のチェック、およびすべてのダーティ属性メソッドが提供されます。

例:

属性のエイリアス。

class Product
  include Mongoid::Document
  field :price, :type => Float
  alias_attribute :cost, :price
end

パラメーター:

  • name シンボル

    新しい名前。

  • 元の シンボル

    元の名前。



323
324
325
326
327
328
329
330
331
332
333
334
335
336
ファイル 'Build/mongoid- 8.1 /lib/mongoid/attributes.rb ', 行323

デフォルト alias_attribute(name, 元の)
  analyzed_fields[name.to_s] = 元の.to_s

  analyze_method name, 元の
  analyze_method " #{ name } = ", " #{元の} = "
  analyze_method " #{ name } ? ", " #{元の}はありますか"
  analyze_method " #{ name } _change ", " #{元の} _change "
  analyze_method " #{ name } _changed? ", " #{元の} _changed? ]
  analyze_method "リセット_ #{ name } . ", "リセット_ #{元の}  "
  analyze_method " replace_ #{ name } _to_default. ", " replace_ #{元の} _to_default. "
  analyze_method " #{ name } _was ", " #{元の} _was "
  analyze_method " #{ name } _write_changed. ", " #{元の} _write_changeです
  analyze_method " #{ name } _Before_type_ Cast ", " #{元の} _Before_type_ Cast "
end

#analyas_attribute (name) =オブジェクト

フィールド エイリアスを削除します。

パラメーター:

  • name シンボル

    削除するエイリアス フィールド名。



341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
ファイル 'Build/mongoid- 8.1 /lib/mongoid/attributes.rb ', 行341

デフォルト unalias_attribute(name)
  ただし、 analyzed_fields.削除(name.to_s)
    発生 AttributeError, "フィールド番号 { name }はエイリアス フィールドではありません"
  end

  delete_method name
  delete_method " #{ name } = "
  delete_method " #{ name } ? "
  delete_method " #{ name } _change "
  delete_method " #{ name } _changed? "
  delete_method "リセット_ #{ name } . "
  delete_method " replace_ #{ name } _to_default. "
  delete_method " #{ name } _was "
  delete_method " #{ name } _write_changed. "
  delete_method " #{ name } _Before_type_ Cast "
end