Method: BlueprinterActiveRecord::Helpers#diff_preloads
- Defined in:
- lib/blueprinter-activerecord/helpers.rb
#diff_preloads(before, after, diff = [], path = []) ⇒ Array<Array<Symbol>>
Finds preloads from ‘after’ that are missing in ‘before’.
38 39 40 41 42 43 44 45 |
# File 'lib/blueprinter-activerecord/helpers.rb', line 38 def diff_preloads(before, after, diff = [], path = []) after.each_with_object(diff) do |(key, after_val), obj| sub_path = path + [key] before_val = before[key] obj << sub_path if before_val.nil? diff_preloads(before_val || {}, after_val, diff, sub_path) end end |