Module: MakeTaggable::Taggable::Cache::InstanceMethods

Defined in:
lib/make_taggable/taggable/cache.rb

Overview

Added to a model once it has at least one caching column.

Instance Method Summary collapse

Instance Method Details

#save_cached_tag_listTrueClass

Writes each cached tag list into its column. Runs before save.

Returns:

  • (TrueClass)


126
127
128
129
130
131
132
133
134
135
136
137
# File 'lib/make_taggable/taggable/cache.rb', line 126

def save_cached_tag_list
  tag_types.map(&:to_s).each do |tag_type|
    if self.class.send("caching_#{tag_type.singularize}_list?")
      if tag_list_cache_set_on(tag_type)
        list = tag_list_cache_on(tag_type).to_a.flatten.compact.join("#{MakeTaggable.delimiter} ")
        self["cached_#{tag_type.singularize}_list"] = list
      end
    end
  end

  true
end