Sha256: 0b279005aae63bafdf83111632a130eda23894df404adc9aacd7e779733f11b8
Contents?: true
Size: 607 Bytes
Versions: 13
Compression:
Stored size: 607 Bytes
Contents
require 'n1_loader' require_relative 'context/service' # Class that wants to request 3rd party service without N+1 class User include N1Loader::Loadable n1_optimized :optimized_call do |users| data = Service.receive(users) users.each_with_index do |user, index| fulfill(user, data[index]) end end end users = [User.new, User.new, User.new] # Initialized loader but didn't perform it yet N1Loader::Preloader.new(users).preload(:optimized_call) p "No calls yet: #{Service.count == 0}" # First time loading users.map(&:optimized_call) p "First time loaded: #{Service.count == 1}"
Version data entries
13 entries across 13 versions & 1 rubygems