본문 바로가기

Ruby3

unicode normalizeのform ruby on rails 6.1 update release notehttps://edgeguides.rubyonrails.org/6_1_release_notes.htmlRemove deprecated ActiveSupport::Multibyte::Unicode.pack_graphemes, ActiveSupport::Multibyte::Unicode.unpack_graphemes, ActiveSupport::Multibyte::Unicode.normalize, ActiveSupport::Multibyte::Unicode.downcase, ActiveSupport::Multibyte::Unicode.upcase and ActiveSupport::Multibyte::Unicode.swapcase.  6.1バー.. 2024. 6. 10.
rsepc mock 메소드 내부 확인 describe '#test_target_method' do subject do described_class.new.test_target_method end before do travel_to('2020-01-01 00:00:00') ... end shared_examples '공통 테스트' do |sql| it '확인 내용' do allow(모듈::클래스).to receive(:new).and_return(test_class) test_class.class.alias_method :original_method_name, :method_name allow(test_class).to receive(:method_name) do |relation| result = test_class.original_meth.. 2023. 10. 23.
rails ActiveRecord 메모리, 성능 개선 공통DB SQL발행 횟수를 줄이기 SelectN+1을 예방하기includes, preload, eager_load를 사용해서 쿼리를 캐시하기includes : 테이블 별로 SQL로 검색해서 캐시, 조건에 따라 SQL 1개만 발행preload : 테이블 별로 SQL로 검색해서 캐시, 관련테이블은 조건 지정 불가능eager_load : 관련된 테이블을 left join으로 검색해서 캐시, SQL 1개만 발행@user = User.includes(:UserDetail)검색시 불필요한 join이나 eagal_load를 줄이기단순 Copy & Paste 혹은 코드 수정으로 인해 사용하지 않는 테이블을 지우기건수 검색할때는 length를 사용하기count : 실행할 때 마다 SQL발행size : 실행할 때 마다 S.. 2022. 12. 30.