Commit a68702544b34a538ce4c46b9dee6396338fecb6a
1 parent
80406431
Exists in
master
and in
19 other branches
Save some memory
Showing
1 changed file
with
9 additions
and
1 deletions
Show diff stats
lib/searchkick/record_data.rb
@@ -51,7 +51,15 @@ module Searchkick | @@ -51,7 +51,15 @@ module Searchkick | ||
51 | options = record.class.searchkick_options | 51 | options = record.class.searchkick_options |
52 | 52 | ||
53 | # remove _id since search_id is used instead | 53 | # remove _id since search_id is used instead |
54 | - source = record.send(method_name || :search_data).each_with_object({}) { |(k, v), memo| memo[k.to_s] = v; memo }.except(*EXCLUDED_ATTRIBUTES) | 54 | + source = record.send(method_name || :search_data) |
55 | + source.keys.each do |k| | ||
56 | + unless k.is_a?(String) | ||
57 | + source[k.to_s] = source.delete(k) | ||
58 | + end | ||
59 | + end | ||
60 | + EXCLUDED_ATTRIBUTES.each do |attr| | ||
61 | + source.delete(attr) | ||
62 | + end | ||
55 | 63 | ||
56 | # conversions | 64 | # conversions |
57 | if options[:conversions] | 65 | if options[:conversions] |