Sha256: 94fb9fe20bb42557ff724a668cdec2609ff0ceaf616df9e9ba996413c3c08642
Contents?: true
Size: 831 Bytes
Versions: 1
Compression:
Stored size: 831 Bytes
Contents
require 'peoplefinder' module Peoplefinder::Concerns::Searchable extend ActiveSupport::Concern included do include Elasticsearch::Model include Elasticsearch::Model::Callbacks index_name [Rails.env, model_name.collection.gsub(/\//, '-')].join('_') def self.delete_indexes __elasticsearch__.delete_index! index: Peoplefinder::Person.index_name end def self.fuzzy_search(query) search( size: 100, query: { fuzzy_like_this: { fields: [:name, :description, :location, :role_and_group], like_text: query, prefix_length: 3, ignore_tf: true } } ) end def as_indexed_json(_options = {}) as_json( only: [:description, :location], methods: [:name, :role_and_group] ) end end end
Version data entries
1 entries across 1 versions & 1 rubygems
Version | Path |
---|---|
peoplefinder-0.0.2 | app/models/peoplefinder/concerns/searchable.rb |