Module: Autocompl::Base::ClassMethods

Defined in:
lib/autocompl/base.rb

Constant Summary collapse

BASE_CACHE_KEY =
'autocomplete_cache'.freeze

Instance Method Summary collapse

Instance Method Details

#autocomplete(options = {}) ⇒ Object



13
14
15
16
17
18
19
20
21
22
23
24
# File 'lib/autocompl/base.rb', line 13

def autocomplete(options = {})
  define_method('autocomplete_endpoint') do
    render json: [] if params[:term].nil?
    render json: [] if options.nil?
    if cacheable?
      items = Rails.cache.fetch(get_cache_key(options), expires_in: cache_expire) { get_items(options) }
    else
      items = get_items(options)
    end
    render json: items
  end
end