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 | 51 | options = record.class.searchkick_options |
52 | 52 | |
53 | 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 | 64 | # conversions |
57 | 65 | if options[:conversions] | ... | ... |