モジュール: Mongoid::Persistable::Renameable

次による拡張機能。
ActiveSupport::Concern
次のドキュメントに含まれます。
Mongoid::Persistable
定義:
lib/mongoid/persistable/renameable.rb

Overview

$rename 操作の動作を定義します。

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

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

# rename (名前変更) =ドキュメント

注:

これは、多くの関連付けが埋め込まれたフィールドでは機能しません。

$rename を使用して、ある値から別の値にフィールドの名前を変更します。

例:

フィールドの名前を変更します。

document.rename(title: "salutation", name: "nombre")

パラメーター:

  • renames ハッシュ

    古い名前と新しい名前の名前変更のペア。

次の値を返します。



21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
# ファイル 'lib/mongoid/永続的/renameable.rb' 行21

デフォルト rename(renames)
  準備_アトミック_操作 行う |ops|
    Process_アトミック_操作(renames) 行う |old_field, new_field|
      new_name = new_field.to_s
      場合 execution_アトミックに実行するか?
        process_attribute new_name, 属性[old_field]
        process_attribute old_field, nil
      else
        属性[new_name] = 属性.削除(old_field)
      end
      ops[アトミック_attribute_name(old_field)] = アトミック_attribute_name(new_name)
    end
    { " $rename " => ops }
  end
end