モジュール: Mongoid::Threaded
- 次による拡張機能。
- スレッド
- 次のドキュメントに含まれます。
- スレッド
- 定義:
- build/mongoid- 8.1 /lib/mongoid/threaded.rb 、
build/mongoid- 8.1 /lib/mongoid/threaded/Lifecollection.rb
Overview
このモジュールには、現在のスレッドでライフサイクルがあるオブジェクトに簡単にアクセスするためのロジックが含まれています。
名前空間で定義済み
Modules: ライフサイクル
定数の概要の削減
- DATABASE_OVERRIDE_KEY =
。[mongoid]:db-overwrite。
- CLIENTS_KEY =
クライアントを保存するキーの定数。
。[mongoid]:clients。
- CLIENT_OVERRIDE_KEY =
クライアントを上書きするキー。
。[mongoid]:client-overwrite。
- CURRENT_SCOPE_KEY =
現在のスレッドのスコープ スタックのキー。
。[mongoid]:current-scope。
- オートメーション_キー =
。[mongoid]: autosaves。
- VALIDATIONS_KEY =
。[mongoid]:validation。
- STACK_KEY =
ハッシュ.新着情報 行う |ハッシュ, キー| ハッシュ[キー] = " [mongoid]: #{ key } -stack " end
- EXECUTE_CALLBACKS =
ドキュメントに対してコールバックが実行されるかどうかのデフォルト値を保存するキー。
'[mongoid]:execute-colbacks'
- BIND =
'bind'.freeze
- ASsign =
はを割り当てます.freeze
- 構築 =
'ビルド'.freeze
- ロード =
'load'.freeze
- CREATE =
' create '.freeze
インスタンス メソッドの概要を折りたたむ
-
自動保存の数(ドキュメント)=true| false
ドキュメントは現在のスレッドで自動保存されていますか?
-
#autosaves ⇒ Hash
現在のスレッド上のすべてのオート保存を取得します。
-
#autosaves_for(klass) ⇒ Array
クラスの現在のスレッドにおけるすべてのオート保存を取得します。
-
#begin_autosave(document) ⇒ Object
現在のスレッドでドキュメントの自動保存を開始します。
-
# start_execution (name) = true
名前付きスレッド ローカル スタックへのエントリを開始します。
-
start_validate (ドキュメント)= オブジェクト
現在のスレッドでドキュメントの検証を開始します。
-
# start_when_default_scope (klas)= オブジェクト
private
現在のスレッドで特定のモデルのデフォルト スコープの非表示を開始します。
-
#clear_session ⇒ nil
このスレッドのキャッシュされたセッションをクリアします。
-
# client_serveride = string | Symbol
グローバル クライアント オーバーライドを取得します。
-
クライアント_オーバーライド= (名前) = string = (name) = string | Symbol
グローバル クライアント オーバーライドを設定します。
-
#current_scope (klas = nil)===========================================================
現在の Mongoid スコープを取得します。
-
# current_scope= (スコープ)===================================================================================
現在の Mongoid スコープを設定します。
-
#database_override ⇒ String | Symbol
グローバル データベースの上書きを取得します。
-
# database_overwrite= (name) = string | Symbol
グローバル データベース オーバーライドを設定します。
-
#実行_コールバックs= (フラグ) = オブジェクト
現在のスレッドに対してドキュメント コールバックをデフォルトで呼び出すかどうかを示します。
-
実行_コールバックの回数は? = true | false
ドキュメント コールバックを現在のスレッドでデフォルトで実行するかどうかをクエリします。
-
を実行する数は? (name) = true
名前付きスタックを実行している最中である。
-
終了_自動保存(ドキュメント) = オブジェクト
現在のスレッドでドキュメントの自動保存を終了します。
-
# end_execution (name) = true
名前付きスレッド ローカル スタックから終了します。
-
end_validate (ドキュメント) = オブジェクト
現在のスレッド上のドキュメントの検証を終了します。
-
# end_Without_default_scope (klas) = オブジェクト
private
現在のスレッドで特定のモデルのデフォルト スコープの非表示を終了します。
-
#get_session ⇒ Mongo::Session | nil
このスレッドのキャッシュされたセッションを取得します。
-
# set_current_scope (scope、klas) = 基準
現在の Mongoid スコープを設定します。
-
#set_session(session) ⇒ Object
このスレッドのセッションをキャッシュします。
-
#stack (名前)= 配列
名前付きスタックを取得します。
-
検証された回数(ドキュメント)=true| false
ドキュメントは現在のスレッドで検証されていますか?
-
#validations ⇒ Hash
現在のスレッドのすべての検証を取得します。
-
#validations_for(klass) ⇒ Array
クラスの現在のスレッドに関するすべての検証を取得します。
-
では、_default_scope は(klas) = ブール値
private
指定されたクラスのデフォルトのスコープは現在のスレッドで非表示になっていますか。
インスタンス メソッドの詳細
自動保存の数(ドキュメント)= true| false
ドキュメントは現在のスレッドで自動保存されていますか?
263 264 265 |
ファイル ' build/mongoid- 8.1 /lib/mongoid/threaded.rb ' の場合は263行 デフォルト 自動保存(ドキュメント) autoss_for(ドキュメント.クラス).include?(ドキュメント._id) end |
#autosaves ⇒ Hash
現在のスレッド上のすべてのオート保存を取得します。
285 286 287 |
ファイル ' build/mongoid- 8.1 /lib/mongoid/threaded.rb ' の場合は285行 デフォルト 自動保存 スレッド.Current[オートメーション_キー] ||= {} end |
#autosaves_for(klass) ⇒ Array
クラスの現在のスレッドにおけるすべてのオート保存を取得します。
307 308 309 |
ファイル ' build/mongoid- 8.1 /lib/mongoid/threaded.rb ' の場合は307行 デフォルト autoss_for(klass) 自動保存[klass] ||= [] end |
#begin_autosave(document) ⇒ Object
現在のスレッドでドキュメントの自動保存を開始します。
111 112 113 |
ファイル ' build/mongoid- 8.1 /lib/mongoid/threaded.rb ' の場合は111行 デフォルト begin_autosave(ドキュメント) autoss_for(ドキュメント.クラス).プッシュ(ドキュメント._id) end |
# start_execution (name) = true
名前付きスレッド ローカル スタックへのエントリを開始します。
43 44 45 |
ファイル ' build/mongoid- 8.1 /lib/mongoid/threaded.rb ' の場合は43行 デフォルト start_execution(name) stack(name).プッシュ(true) end |
start_validate (ドキュメント)=オブジェクト
現在のスレッドでドキュメントの検証を開始します。
121 122 123 |
ファイル ' build/mongoid- 8.1 /lib/mongoid/threaded.rb ' の場合は121行 デフォルト start_validate(ドキュメント) validation_for(ドキュメント.クラス).プッシュ(ドキュメント._id) end |
# start_when_default_scope (klas)=オブジェクト
このメソッドは、プライベート API の一部です。 このメソッドは将来削除または変更される可能性があるため、可能な限り使用しないでください。
現在のスレッドで特定のモデルのデフォルト スコープの非表示を開始します。
153 154 155 |
ファイル ' build/mongoid- 8.1 /lib/mongoid/threaded.rb ' の場合は153行 デフォルト start_Without_default_scope(klass) stack(: without_default_scope).プッシュ(klass) end |
#clear_session ⇒ nil
このスレッドのキャッシュされたセッションをクリアします。
348 349 350 351 352 |
ファイル ' build/mongoid- 8.1 /lib/mongoid/threaded.rb ' の場合は348行 デフォルト clear_session セッション = get_session セッション.end_session 場合 セッション スレッド.Current[" [mongoid]:session "] = nil end |
# client_serveride = string | Symbol
グローバル クライアント オーバーライドを取得します。
175 176 177 |
ファイル ' build/mongoid- 8.1 /lib/mongoid/threaded.rb ' の場合は175行 デフォルト client_ overwrite スレッド.Current[CLIENT_OVERRIDE_KEY] end |
クライアント_オーバーライド= (名前) = string = (name) = string | Symbol
グローバル クライアント オーバーライドを設定します。
187 188 189 |
ファイル ' build/mongoid- 8.1 /lib/mongoid/threaded.rb ' の場合は187行 デフォルト client_ overwrite=(name) スレッド.Current[CLIENT_OVERRIDE_KEY] = name end |
#current_scope ( klas = nil)===========================================================
現在の Mongoid スコープを取得します。
200 201 202 203 204 205 206 207 208 |
ファイル ' build/mongoid- 8.1 /lib/mongoid/threaded.rb ' の場合は200行 デフォルト current_scope(klass = nil) 場合 klass & & スレッド.Current[CURRENT_SCOPE_KEY].respond_to?(:keys) スレッド.Current[CURRENT_SCOPE_KEY][ スレッド.Current[CURRENT_SCOPE_KEY].キー.find { |k| k <= klass } ] else スレッド.Current[CURRENT_SCOPE_KEY] end end |
# current_scope= (スコープ) =============================================================================
現在の Mongoid スコープを設定します。
218 219 220 |
ファイル ' build/mongoid- 8.1 /lib/mongoid/threaded.rb ' の場合は218行 デフォルト current_scope=(scope) スレッド.Current[CURRENT_SCOPE_KEY] = scope end |
#database_override ⇒ String | Symbol
グローバル データベースの上書きを取得します。
53 54 55 |
ファイル ' build/mongoid- 8.1 /lib/mongoid/threaded.rb ' の場合は53行 デフォルト database_override スレッド.Current[DATABASE_OVERRIDE_KEY] end |
# database_overwrite= (name) = string | Symbol
グローバル データベース オーバーライドを設定します。
65 66 67 |
ファイル ' build/mongoid- 8.1 /lib/mongoid/threaded.rb ' の場合は65行 デフォルト database_override=(name) スレッド.Current[DATABASE_OVERRIDE_KEY] = name end |
#実行_コールバックs= (フラグ) =オブジェクト
現在のスレッドに対してドキュメント コールバックをデフォルトで呼び出すかどうかを示します。 個々のドキュメントはコールバックの動作をさらにオーバーライドする場合がありますが、これはデフォルトの動作に使用されます。
376 377 378 |
ファイル ' build/mongoid- 8.1 /lib/mongoid/threaded.rb ' の場合は376行 デフォルト execution_colbacks=(flag) スレッド.Current[EXECUTE_CALLBACKS] = flag end |
実行_コールバックの回数は? = true | false
ドキュメント コールバックを現在のスレッドでデフォルトで実行するかどうかをクエリします。
特に指定されていない限り(#execute_colbacks=)、これは true を返します。
362 363 364 365 366 367 368 |
ファイル ' build/mongoid- 8.1 /lib/mongoid/threaded.rb ' の場合は362行 デフォルト execution_colbacks? 場合 スレッド.Current.key?(EXECUTE_CALLBACKS) スレッド.Current[EXECUTE_CALLBACKS] else true end end |
を実行する数は? (name) = true
名前付きスタックの実行の途中である
77 78 79 |
ファイル ' build/mongoid- 8.1 /lib/mongoid/threaded.rb ' の場合は77行 デフォルト 実行中(name) !stack(name).空の場合 end |
終了_自動保存(ドキュメント) =オブジェクト
現在のスレッドでドキュメントの自動保存を終了します。
131 132 133 |
ファイル ' build/mongoid- 8.1 /lib/mongoid/threaded.rb ' の場合は131行 デフォルト exit_autosave(ドキュメント) autoss_for(ドキュメント.クラス).delete_one(ドキュメント._id) end |
# end_execution (name) = true
名前付きスレッド ローカル スタックから終了します。
89 90 91 |
ファイル ' build/mongoid- 8.1 /lib/mongoid/threaded.rb ' の場合は89行 デフォルト end_execution(name) stack(name).ポップ end |
end_validate (ドキュメント) =オブジェクト
現在のスレッド上のドキュメントの検証を終了します。
141 142 143 |
ファイル ' build/mongoid- 8.1 /lib/mongoid/threaded.rb ' の場合は141行 デフォルト end_validate(ドキュメント) validation_for(ドキュメント.クラス).delete_one(ドキュメント._id) end |
# end_Without_default_scope (klas) = オブジェクト
このメソッドは、プライベート API の一部です。 このメソッドは将来削除または変更される可能性があるため、可能な限り使用しないでください。
現在のスレッドで特定のモデルのデフォルト スコープの非表示を終了します。
165 166 167 |
ファイル ' build/mongoid- 8.1 /lib/mongoid/threaded.rb ' の場合は165行 デフォルト end_Without_default_scope(klass) stack(: without_default_scope).削除(klass) end |
#get_session ⇒ Mongo::Session | nil
このスレッドのキャッシュされたセッションを取得します。
338 339 340 |
ファイル ' build/mongoid- 8.1 /lib/mongoid/threaded.rb ' の場合は338行 デフォルト get_session スレッド.Current[" [mongoid]:session "] end |
# set_current_scope (scope、klas) =基準
現在の Mongoid スコープを設定します。 マルチモデルのスコープチェーンでも安全です。
231 232 233 234 235 236 237 238 239 240 241 |
ファイル ' build/mongoid- 8.1 /lib/mongoid/threaded.rb ' の場合は231行 デフォルト set_current_scope(scope, klass) 場合 scope.nil? 場合 スレッド.Current[CURRENT_SCOPE_KEY] スレッド.Current[CURRENT_SCOPE_KEY].削除(klass) スレッド.Current[CURRENT_SCOPE_KEY] = nil 場合 スレッド.Current[CURRENT_SCOPE_KEY].空の場合 end else スレッド.Current[CURRENT_SCOPE_KEY] ||= {} スレッド.Current[CURRENT_SCOPE_KEY][klass] = scope end end |
#set_session(session) ⇒ Object
このスレッドのセッションをキャッシュします。
328 329 330 |
ファイル ' build/mongoid- 8.1 /lib/mongoid/threaded.rb ' の場合は328行 デフォルト set_session(セッション) スレッド.Current[" [mongoid]:session "] = セッション end |
#stack (名前)=配列
名前付きスタックを取得します。
101 102 103 |
ファイル ' build/mongoid- 8.1 /lib/mongoid/threaded.rb ' の場合は101行 デフォルト stack(name) スレッド.Current[STACK_KEY[name]] ||= [] end |
検証された回数(ドキュメント)= true| false
ドキュメントは現在のスレッドで検証されていますか?
275 276 277 |
ファイル ' build/mongoid- 8.1 /lib/mongoid/threaded.rb ' の場合は275行 デフォルト 検証されていますか?(ドキュメント) validation_for(ドキュメント.クラス).include?(ドキュメント._id) end |
#validations ⇒ Hash
現在のスレッドのすべての検証を取得します。
295 296 297 |
ファイル ' build/mongoid- 8.1 /lib/mongoid/threaded.rb ' の場合は295行 デフォルト validation スレッド.Current[VALIDATIONS_KEY] ||= {} end |
#validations_for(klass) ⇒ Array
クラスの現在のスレッドに関するすべての検証を取得します。
318 319 320 |
ファイル ' build/mongoid- 8.1 /lib/mongoid/threaded.rb ' の場合は318行 デフォルト validation_for(klass) validation[klass] ||= [] end |
では、_default_scope は(klas) = ブール値
このメソッドは、プライベート API の一部です。 このメソッドは将来削除または変更される可能性があるため、可能な限り使用しないでください。
指定されたクラスのデフォルトのスコープは現在のスレッドで非表示になっていますか。
251 252 253 |
ファイル ' build/mongoid- 8.1 /lib/mongoid/threaded.rb ' の場合は251行 デフォルト without_default_scope は(klass) stack(: without_default_scope).include?(klass) end |