最上位の名前空間

名前空間で定義済み

Modules: ApplicationCableApplicationHelperブログコメントヘルパー 、 MongoidMongoidTestMongoidTestConfigMongoidTestInitPostsHelperRailsRailsApiクラス: Application Controlr 、 ApplicationJobApplicationMailerApplicationsystemTestCateコメント、 コメントTestコメントコントロール 、 PostPostTest 、 Posts Controller

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

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

チェック_if_transactions_write_be_available (クライアント) =オブジェクト

このメソッドでは、クライアントが接続しているクラスターがトランザクションをサポートしていない場合、エラーが発生します。 現時点では、これはスタンドアロンのトポロジーの場合です。

このメソッドで発生しなかった場合、クラスターでトランザクションが利用可能であることは保証されないことに注意してください。

パラメーター:

  • クライアント Mongo::Client

    テストするクラスターに接続されたクライアント。

次の値が発生します。



16
17
18
19
20
# ファイル 'lib/mongoid/ Rails/condle_sandbox.rb' は、 16行を

デフォルト checkpoint_if_transactions_mit_be_available.(クライアント)
  場合 クライアント.クラスター.単一か
    発生 Mongoid::Errors::TransactionsNotSupported
  end
end

標準_依存関係 =オブジェクト

bulkop:todo all



2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
ファイル "gemfiles/standard.rb", 行2

デフォルト standard_dependencies
  gem 'rake'

  グループ :development 行う
    gem ' MongoDB '

    プラットフォーム :mri 行う
      VSCode 用の#デバッグ。
      場合 !ENV['CI'] & & !ENV['DOCKER'] & & Ruby_VERSION < '3.0'
        gem 'debase'
        gem 'ruby-debug-ide'
      end
    end

    #evergreen 構成生成
    gem 'erubi'
    gem 'tilt'
    gem ソートグラフ, プラットフォーム: :mri
  end

  グループ :development, :テスト 行う
    gem 'rspec', '~> 3.12'
    gem 'rubocop', '~> 1.45.1'
    gem ' Rubyop- performance ', '~> 1.16.0'
    gem 'rubocop-rake', '~> 0.6.0'
    gem 'rubocop-rspec', '~> 2.18.1'

    プラットフォーム :mri 行う
      gem 'byebug'
    end

    プラットフォーム :jruby 行う
      gem 'ruby-debug'
    end
  end

  グループ :テスト 行う
    gem アクティブ ジョブ
    gem 'timecop'
    gem 'rspec-retry'
    gem ベンチマーク-ips 
    gem 'fuubar'
    gem 'rfc'
    gem '子プロセス'

    プラットフォーム :mri 行う
      gem 'タイムアウト中断'
    end
  end

  場合 ENV['FLE'] == 'ヘルパー'
    gem ' libmongocrypt-helper ', '~> 1.8.0'
  end
end

#start_sandboxObject

コンソール サンドボックス モードを準備します。 このメソッドは、ユーザーが Rails コンソールを '-sandbox' フラグで起動したときに呼び出す必要があります。



36
37
38
39
40
41
# ファイル 'lib/mongoid/ Rails/condle_sandbox.rb' は、 36行を

デフォルト start_sandbox
  Mongoid.duration_context.クライアント.タップ 行う |クライアント|
    checkpoint_if_transactions_mit_be_available.(クライアント)
    start_sandbox_transaction(クライアント)
  end
end

# start_sandbox_transaction (クライアント) =オブジェクト

サンドボックス化されたコンソール セッション内ですべての操作を含むトランザクションを開始します。 このトランザクションはコミットしないでください。 ユーザーがコンソール セッションを終了すると、クライアントは切断され、トランザクションは自動的に中止されます。

パラメーター:

  • クライアント Mongo::Client

    トランザクションを開始するクライアント。



28
29
30
31
32
# ファイル 'lib/mongoid/ Rails/condle_sandbox.rb' は、 28行を

デフォルト start_sandbox_transaction(クライアント)
  セッション = クライアント.start_session
  ::Mongoid::スレッド.set_session(セッション, クライアント: クライアント)
  セッション.start_transaction
end