मेरे पास एक रेल एप्लिकेशन है जो अब मॉडल पर खोज करने के लिए लोचदार खोज और टायर मणि के साथ स्थापित है और मैं सोच रहा था कि मुझे फ़ज़ी स्ट्रिंग करने के लिए अपना एप्लिकेशन कैसे सेट अप करना चाहिए मॉडल में कुछ इंडेक्स पर मिलान। मेरे पास शीर्षक, विवरण इत्यादि जैसी चीजों पर इंडेक्स पर सेट अप किया गया है, लेकिन मैं उनमें से कुछ पर फ़ज़ी स्ट्रिंग मिलान करना चाहता हूं और मुझे यकीन नहीं है कि यह कहां करें। यदि आप टिप्पणी करना चाहते हैं तो मैं नीचे अपना कोड शामिल करूंगा! धन्यवाद!रेल (टायर) और लोचदार खोज के साथ फ़ज़ी स्ट्रिंग मिलान
नियंत्रक में:
def search
@resource = Resource.search(params[:q], :page => (params[:page] || 1),
:per_page =>15, load: true)
end
मॉडल में:
class Resource < ActiveRecord::Base
include Tire::Model::Search
include Tire::Model::Callbacks
belongs_to :user
has_many :resource_views, :class_name => 'UserResourceView'
has_reputation :votes, source: :user, aggregated_by: :sum
attr_accessible :title, :description, :link, :tag_list, :user_id, :youtubeID
acts_as_taggable
mapping do
indexes :id, :index => :not_analyzed
indexes :title, :analyzer => 'snowball', :boost => 40
indexes :tag_list, :analyzer => 'snowball', :boost => 8
indexes :description, :analyzer => 'snowball', :boost => 2
indexes :user_id, :analyzer => 'snowball'
end
end
सहायक, लेकिन लोचदार खोज बहुत ही बोझिल हो गया ताकि हम postgresql पर स्विच कर सकें। हालांकि धन्यवाद! – noname
बहुत उपयोगी ... धैर्य के साथ, आपका उदाहरण एक आकर्षण की तरह काम करता है :) – Rinku
'store => 'yes' पैरामीटर का क्या प्रभाव है? – phillbaker