최상위 네임스페이스
네임스페이스 아래에 정의됨
모듈: ApplicationCable, ApplicationHelper, Blog, CommentsHelper, Mongoid, MongoidTest, MongoidTestConfig, MongoidTestInit, PostsHelper, Rails, RailsApi 클래스: Application Controller, ApplicationJob, Applicationmailer, ApplicationSystemTestCase, 코멘트 , Post 컨트롤러 코멘트 , Post 컨트롤러
인스턴스 메서드 요약 접기
-
#check_if_transactions_might_be_available!(클라이언트) ⇒ 객체
이 메서드는 클라이언트 가 연결된 클러스터 가 어떤 경우에도 트랜잭션을 지원 하지 않는 경우 오류를 발생시킵니다.
-
#Standard_dependencies ⇒ 객체
Rubocop:todo all.
-
#start_sandbox ⇒ Object
콘솔 샌드박스 모드 를 준비합니다.
-
#start_sandbox_transaction(클라이언트) ⇒ Object
샌드박스 콘솔 세션 내의 모든 작업을 포함해야 하는 트랜잭션 을 시작합니다.
인스턴스 메서드 세부 정보
#check_if_transactions_might_be_available!(클라이언트) ⇒ 객체
이 메서드는 클라이언트 가 연결된 클러스터 가 어떤 경우에도 트랜잭션을 지원 하지 않는 경우 오류를 발생시킵니다. 현재 독립형 토폴로지 의 경우가 이에 해당합니다.
이 메서드를 실행하지 않았다고 해서 클러스터 에서 트랜잭션을 사용할 수 있다는 보장이 없다는 점에 유의하세요.
16 17 18 19 20 |
# 파일 'lib/mongoid/railties/console_sandbox.rb', 줄 16 def check_if_transactions_might_be_available!(고객) 만약 고객.cluster.싱글? 올리다 몽고이드::오류::TransactionsNotSupported end end |
#Standard_dependencies ⇒ 객체
Rubocop: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줄 def Standard_dependencies gem 'rake' 그룹 :development do gem '야드' 플랫폼 :mri do # VSCode용 디버거. 만약 !ENV['CI'] && !ENV['Docker'] && RUBY_VERSION < '3.0' gem 'debase' gem 'ruby-debug-ide' end end # 에버그린 구성 생성 gem 'erubi' gem 'tilt' gem 'solargraph', 플랫폼: :mri end 그룹 :development, :test do gem 'rspec', '~> 3.12' gem 'rubocop', '~> 1.45.1' gem 'Rubocop-performance', '~> 1.16.0' gem 'rubocop-rake', '~> 0.6.0' gem 'Rubocop-rspec', '~> 2.18.1' 플랫폼 :mri do gem 'byebug' end 플랫폼 :jruby do gem 'Ruby-debug' end end 그룹 :test do gem 'activejob' gem 'timecop' gem 'rspec-retry' gem '벤치마크-ips' gem 'fuubar' gem 'rfc' gem '자식 프로세스' 플랫폼 :mri do gem 'timeout-interrupt' end end 만약 ENV['FLE'] == '헬퍼' gem 'libmongocrypt-helper', '~> 1.8.0' end end |
#start_sandbox ⇒ Object
콘솔 샌드박스 모드 를 준비합니다. 이 메서드는 사용자가 '-sandbox' 플래그와 함께 Rails 콘솔을 시작할 때 호출해야 합니다.
36 37 38 39 40 41 |
# 파일 'lib/mongoid/railties/console_sandbox.rb', 줄 36 def start_sandbox 몽고이드.persistence_context.고객.탭 do |고객| check_if_transactions_might_be_available!(고객) start_sandbox_transaction(고객) end end |
#start_sandbox_transaction(클라이언트) ⇒ Object
샌드박스 콘솔 세션 내의 모든 작업을 포함해야 하는 트랜잭션 을 시작합니다. 이 트랜잭션 은 절대 커밋해서는 안 됩니다. 사용자가 콘솔 세션을 종료하면 클라이언트 연결이 끊기므로 트랜잭션 이 자동으로 중단됩니다.
28 29 30 31 32 |
# 파일 'lib/mongoid/railties/console_sandbox.rb', 줄 28 def start_sandbox_transaction(고객) Session = 고객.start_session ::몽고이드::스레드.set_session(Session, 클라이언트: 고객) Session.start_transaction end |