モジュール: Mongoid::InterAcceptable
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_field_After_colbacks (colback_list: []) = オブジェクト
コールバック後に実行します。
-
#_mongoid_run_field_Before_ Callbacks (種類、子: []、colback_list: []) = オブジェクト
private
埋め込みドキュメントに対して特定の種類のコールバックの前に実行します。
-
# _mongoid_run_ String_colbacks (種類、子: nil、 & ブロック) = オブジェクト
private
埋め込みドキュメントのコールバックを実行します。
-
#_mongoid_run_ String_colbacks_with_round (種類、子: nil、 & ブロック) = オブジェクト
周囲のコールバックを含む埋め込みドキュメントに対して、特定の種類のコールバックを実行します。
-
#_mongoid_run_ String_colbacks_confirm
private
埋め込みドキュメントの特定の種類のコールバックを、周囲のコールバックなしで実行します。
-
Callback_executable? (種類) → true | false
提供されたコールバックのタイプは、このドキュメントで実行可能かどうか。
-
in_呼び出す_状態は? (種類) → true | false
ドキュメントは現在、コールバックの実行が必要になる可能性のある状態ではありますか。
-
#pending_calbacks = 配列= インポート<Symbol>
private
後で実行する保存されたコールバックを返します。
-
# pending_calbacks= (value) = (value) = (value) ======= =============================================================================================================<Symbol>
private
後で実行するコールバックを保存します。
-
# run_ after_colbacks (* 種類) = オブジェクト
特定のイベントの後のコールバックのみを実行します。
-
# run_from
特定のイベントのコールバックの前に のみを実行します。
-
# run_colbacks (種類、with_fielden: true、skip_if: nil、=============================================
ドキュメントのコールバックを実行します。
-
# run_pending_colbacks =オブジェクト
private
保留中のコールバックを実行します。
インスタンス メソッドの詳細
#_mongoid_run_field_After_colbacks (colback_list: []) =オブジェクト
コールバック後に実行します。
250 251 252 253 254 255 |
# ファイル 'lib/mongoid/Inter Opsable.rb' 行250 デフォルト _mongoid_run_field_After_colbacks(Callback_list: []) Callback_list.verse_each 行う |next_Sequence, env| next_Sequence.invoice_ after(env) return false 場合 env.停止しました end end |
#_mongoid_run_field_Before_ Callbacks (種類、子: []、colback_list: []) =オブジェクト
このメソッドは、プライベート API の一部です。 このメソッドは将来削除または変更される可能性があるため、可能な限り使用しないでください。
埋め込みドキュメントに対して特定の種類のコールバックの前に実行します。
229 230 231 232 233 234 235 236 237 238 239 240 241 242 243 244 |
# ファイル 'lib/mongoid/Inter Opsable.rb' 行229 デフォルト _mongoid_run_field_Before_ Callbacks(kind, 子: [], Callback_list: []) 子.各 行う |子| 連鎖 = 子.__ Callbacks[event_colback_type(kind, 子)] env = ActiveSupport::コールバック::フィルター::environment.新着情報(子, false, nil) next_Sequence = convert_colbacks(連鎖) ただし、 next_Sequence.最終的には? Mongoid.logger.WARN(" 埋め込みドキュメントでは、約 コールバックは無効になっています。 #{ 子 . クラス . 名前 } のコールバックをスキップし ます 。) Mongoid.logger.WARN("埋め込みドキュメントのアラート コールバックを有効にするには、 Mongoid::Config.round_changes_for_ embeddeds を true に設定します。 ") end next_Sequence.invoice_Before(env) return false 場合 env.停止しました env.価値 = !env.停止しました Callback_list < [next_Sequence, env] end Callback_list end |
# _mongoid_run_ String_colbacks (種類、子: nil、 & ブロック) =オブジェクト
このメソッドは、プライベート API の一部です。 このメソッドは将来削除または変更される可能性があるため、可能な限り使用しないでください。
埋め込みドキュメントのコールバックを実行します。
153 154 155 156 157 158 159 160 161 162 163 |
# ファイル 'lib/mongoid/Inter Opsable.rb' 行153 デフォルト _mongoid_run_field_colbacks(kind, 子: nil, &ブロック) 場合 Mongoid::Config. _mongoid_run_ String_colbacks_with_round(kind, 子: 子, &ブロック) else _mongoid_run_ String_colbacks_Without_round(kind, 子: 子, &ブロック) end end |
#_mongoid_run_ String_colbacks_with_round (種類、子: nil、 & ブロック) =オブジェクト
周囲のコールバックを含む埋め込みドキュメントに対して、特定の種類のコールバックを実行します。
174 175 176 177 178 179 180 181 182 183 184 185 186 187 188 189 190 191 192 193 194 195 196 |
# ファイル 'lib/mongoid/Inter Opsable.rb' 行174 デフォルト _mongoid_run_ String_colbacks_with_round(kind, 子: nil, &ブロック) 子 = (子 || cascalable_fielden(kind)) with_fielden = !Mongoid::Config. return ブロック&.を呼び出す 場合 子.空の場合 ファイル = 子.map 行う |子| ファイバ.新着情報 行う 子.run_colbacks(event_colback_type(kind, 子), with_fielden: with_fielden) 行う ファイバ.ノードの数 end end end ファイル.各 行う |ファイバ| ファイバ.再開 発生 Mongoid::Errors::InvalidAroundCollback ただし、 ファイバ.alive? end ブロック&.を呼び出す ファイル.逆.各(&:resume) end |
#_mongoid_run_ String_colbacks_confirm
このメソッドは、プライベート API の一部です。 このメソッドは将来削除または変更される可能性があるため、可能な限り使用しないでください。
埋め込みドキュメントの特定の種類のコールバックを、周囲のコールバックなしで実行します。
207 208 209 210 211 212 213 214 215 216 217 218 |
# ファイル 'lib/mongoid/Inter Opsable.rb' 行207 デフォルト _mongoid_run_ String_colbacks_Without_round(kind, 子: nil, &ブロック) 子 = (子 || cascalable_fielden(kind)) Callback_list = _mongoid_run_field_Before_ Callbacks(kind, 子: 子) return false 場合 Callback_list == false 価値 = ブロック&.を呼び出す Callback_list.各 行う |_next_Sequence, env| env.価値 &= 価値 end return false 場合 _mongoid_run_field_After_colbacks(Callback_list: Callback_list) == false 価値 end |
Callback_executable? (種類) → true | false
提供されたコールバックのタイプは、このドキュメントで実行可能かどうか。
62 63 64 |
# ファイル 'lib/mongoid/Inter Opsable.rb' 行62 デフォルト Callback_executable?(kind) respond_to?(" _ #{種類} _呼び出すと ") end |
in_呼び出す_状態は? (種類) → true | false
ドキュメントは現在、コールバックの実行が必要になる可能性のある状態ではありますか。
75 76 77 |
# ファイル 'lib/mongoid/Inter Opsable.rb' 行75 デフォルト in_colback_rate(kind) [ :create, :破棄 ].include?(kind) || new_record? || phrase || 変更されたか end |
#pending_calbacks = 配列 = インポート<Symbol>
このメソッドは、プライベート API の一部です。 このメソッドは将来削除または変更される可能性があるため、可能な限り使用しないでください。
後で実行する保存されたコールバックを返します。
262 263 264 |
# ファイル 'lib/mongoid/Inter Opsable.rb' 行262 デフォルト Pending_colbacks @pending_colbacks ||= [].to_set end |
# pending_calbacks= (value) = (value) = (value) ======= =============================================================================================================<Symbol>
このメソッドは、プライベート API の一部です。 このメソッドは将来削除または変更される可能性があるため、可能な限り使用しないでください。
後で実行するコールバックを保存します。 これの良いユースケースは、関連付けがドキュメントに設定されるまで、 after_find と after_initialize コールバックを遅延させることです。 これは、ドキュメントへのデフォルトの適用を遅延させる目的でも使用できます。
276 277 278 |
# ファイル 'lib/mongoid/Inter Opsable.rb' 行276 デフォルト Pending_colbacks=(価値) @pending_colbacks = 価値 end |
# run_ after_colbacks (* 種類) =オブジェクト
ActiveSupport では、デフォルトではこのタイプの動作は許可されていないため、Mongoid はそれを回避して自分自身を実装する必要があります。
特定のイベントの後のコールバックのみを実行します。
90 91 92 93 94 |
# ファイル 'lib/mongoid/Inter Opsable.rb' 行90 デフォルト run_ after_colbacks(*kinds) kinds.各 行う |kind| run_ targeted_colbacks(: after, kind) end end |
# run_from
ActiveSupport では、デフォルトではこのタイプの動作は許可されていないため、Mongoid はそれを回避して自分自身を実装する必要があります。
特定のイベントのコールバックの前に のみを実行します。
107 108 109 110 111 |
# ファイル 'lib/mongoid/Inter Opsable.rb' 行107 デフォルト run_Before_ Callbacks(*kinds) kinds.各 行う |kind| run_ targeted_colbacks(:Before, kind) end end |
# run_colbacks (種類、with_fielden: true、 skip_if : nil、=============================================
ドキュメントのコールバックを実行します。 これにより、アクティブなサポートの機能がオーバーライドされ、フラグが付けられた埋め込みドキュメントへのコールバックがカスケードできます。
127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 |
# ファイル 'lib/mongoid/Inter Opsable.rb' 行127 デフォルト run_colbacks(kind, with_fielden: true, skip_if: nil, &ブロック) 場合 skip_if&.を呼び出す return ブロック&.を呼び出す end 場合 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 関数に渡されます。
285 286 287 288 289 290 291 292 293 294 |
# ファイル 'lib/mongoid/Inter Opsable.rb' 行285 デフォルト 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 |