モジュール: Mongoid::InterAcceptable

次による拡張機能。
ActiveSupport::Concern
次のドキュメントに含まれます。
構成可能
定義:
build/mongoid- 8.1 /lib/mongoid/Inter Opsable.rb

Overview

このモジュールには、Mongoid のすべてのコールバック フックが含まれています。

定数の概要の削減

コールバック =
[
  : after_Build,
  : after_create,
  : after_detroy,
  : after_find,
  : after_initialize,
  : after_save,
  : after_tool,
  : after_update,
  : after_upsert,
  : after_validation,
  :round_create,
  :round_detroy,
  :round_save,
  :round_update,
  :round_upsert,
  :Before_create,
  :Before_detroy,
  :Before_save,
  :Before_update,
  :Before_upsert,
  :Before_validation,
].freeze

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

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

# _mongoid_run_ String_colbacks (種類、子: nil、 & ブロック) =オブジェクト

このメソッドは、プライベート API の一部です。 このメソッドは将来削除または変更される可能性があるため、可能な限り使用しないでください。

埋め込みドキュメントのコールバックを実行します。

パラメーター:

  • kind シンボル

    実行するコールバックの種類。

  • 配列 <ドキュメント> (デフォルトはnil

    コールバックを実行する子。 nil の場合、コールバックはドキュメントのすべてのカスケール可能な子に対して実行されます。



142
143
144
145
146
147
148
149
150
151
152
153
154
ファイル 'Build/mongoid- 8.1 /lib/mongoid/Inter Opsable.rb' 、 行142

デフォルト _mongoid_run_field_colbacks(kind, 子: nil, &ブロック)
  , *追尾 = ( || cascalable_fielden(kind))
  with_fielden = !Mongoid::Config.preserve_multiple_cols_ of_ embedded_conbacks
  場合 .nil?
    ブロック&.を呼び出す
  elsif 追尾.空の場合
    .run_colbacks(event_colback_type(kind, ), with_fielden: with_fielden, &ブロック)
  else
    .run_colbacks(event_colback_type(kind, ), with_fielden: with_fielden) 行う
      _mongoid_run_field_colbacks(kind, 子: 追尾, &ブロック)
    end
  end
end

Callback_executable? (種類) → true | false

提供されたコールバックのタイプは、このドキュメントで実行可能かどうか。

例:

コールバックは実行可能か?

document.callback_executable?(:save)

パラメーター:

  • kind シンボル

    コールバックの種類。

次の値を返します。

  • true | false

    コールバックを実行できる場合。



57
58
59
ファイル 'Build/mongoid- 8.1 /lib/mongoid/Inter Opsable.rb' 、 行57

デフォルト Callback_executable?(kind)
  respond_to?(" _ #{種類} _呼び出すと ")
end

in_呼び出す_状態は? (種類) → true | false

ドキュメントは現在、コールバックの実行が必要になる可能性のある状態ではありますか。

例:

ドキュメントはコールバック状態か?

document.in_callback_state?(:update)

パラメーター:

  • kind シンボル

    コールバックの種類。

次の値を返します。

  • true | false

    ドキュメントがコールバック状態の場合。



70
71
72
ファイル 'Build/mongoid- 8.1 /lib/mongoid/Inter Opsable.rb' 、 行70

デフォルト in_colback_rate(kind)
  [ :create, :破棄 ].include?(kind) || new_record? || phrase || 変更されたか
end

#pending_calbacks = 配列 = インポート<Symbol>

このメソッドは、プライベート API の一部です。 このメソッドは将来削除または変更される可能性があるため、可能な限り使用しないでください。

これは、後で実行するコールバックを保存するために使用されます。 これの良いユースケースは、関連付けがドキュメントに設定されるまで、 after_find と after_initialize コールバックを遅延させることです。 これは、ドキュメントへのデフォルトの適用を遅延させる目的でも使用できます。

次の値を返します。

  • 配列<Symbol>

    保留中のコールバックを表すシンボルの配列。



164
165
166
ファイル 'Build/mongoid- 8.1 /lib/mongoid/Inter Opsable.rb' 、 行164

デフォルト Pending_colbacks
  @pending_colbacks ||= [].to_set
end

# pending_colbacks= (value) = (value) =オブジェクト

このメソッドは、プライベート API の一部です。 このメソッドは将来削除または変更される可能性があるため、可能な限り使用しないでください。



169
170
171
ファイル 'Build/mongoid- 8.1 /lib/mongoid/Inter Opsable.rb' 、 行169

デフォルト Pending_colbacks=(価値)
  @pending_colbacks = 価値
end

# run_ after_colbacks (* 種類) =オブジェクト

注:

ActiveSupport では、デフォルトではこのタイプの動作は許可されていないため、Mongoid はそれを回避して自分自身を実装する必要があります。

特定のイベントの後のコールバックのみを実行します。

例:

保存後にコールバックのみを実行します。

model.run_after_callbacks(:save)

パラメーター:

  • *kinds (Symbol...)

    発生しているイベント。

次の値を返します。

  • オブジェクト

    実行中のチェーンの結果。



85
86
87
88
89
ファイル 'Build/mongoid- 8.1 /lib/mongoid/Inter Opsable.rb' 、 行85

デフォルト run_ after_colbacks(*kinds)
  kinds. 行う |kind|
    run_ targeted_colbacks(: after, kind)
  end
end

# run_from

注:

ActiveSupport では、デフォルトではこのタイプの動作は許可されていないため、Mongoid はそれを回避して自分自身を実装する必要があります。

特定のイベントのコールバックの前に のみを実行します。

例:

コールバックを保存する前に のみを実行します。

model.run_before_callbacks(:save, :create)

パラメーター:

  • *kinds (Symbol...)

    発生しているイベント。

次の値を返します。

  • オブジェクト

    実行中のチェーンの結果。



102
103
104
105
106
ファイル 'Build/mongoid- 8.1 /lib/mongoid/Inter Opsable.rb' 、 行102

デフォルト run_Before_ Callbacks(*kinds)
  kinds. 行う |kind|
    run_ targeted_colbacks(:Before, kind)
  end
end

# run_colbacks (種類、with_fielden: true、期間: オブジェクト)=オブジェクト

ドキュメントのコールバックを実行します。 これにより、アクティブなサポートの機能がオーバーライドされ、フラグが付けられた埋め込みドキュメントへのコールバックがカスケードできます。

例:

コールバックを実行します。

run_callbacks :save do
  save!
end

パラメーター:

  • kind シンボル

    実行するコールバックの種類。

  • with_fielden true | false (デフォルトはtrue

    埋め込みドキュメントのコールバックを実行するかどうかを指定するフラグ。



119
120
121
122
123
124
125
126
127
128
129
130
131
132
ファイル 'Build/mongoid- 8.1 /lib/mongoid/Inter Opsable.rb' 、 行119

デフォルト run_colbacks(kind, with_fielden: true, &ブロック)
  場合 with_fielden
    cascalable_fielden(kind). 行う ||
      場合 .run_colbacks(event_colback_type(kind, ), with_fielden: with_fielden) == false
        return false
      end
    end
  end
  場合 Callback_executable?(kind)
    スーパー(kind, &ブロック)
  else
    true
  end
end

# run_pending_colbacks =オブジェクト

このメソッドは、プライベート API の一部です。 このメソッドは将来削除または変更される可能性があるため、可能な限り使用しないでください。

保留中のコールバックを実行します。 コールバックが :apply_defaults の場合、このドキュメントにデフォルトを適用します。 それ以外の場合、コールバックは run_colbacks 関数に渡されます。



178
179
180
181
182
183
184
185
186
187
ファイル 'Build/mongoid- 8.1 /lib/mongoid/Inter Opsable.rb' 、 行178

デフォルト run_pending_shellbacks
  Pending_colbacks. 行う |cb|
    場合 [:apply_defaults, :apply_post_processed_defaults].include?(cb)
      送信(cb)
    else
      自己.run_colbacks(cb, with_fielden: false)
    end
  end
  Pending_colbacks.クリア
end