Hello!

This forum is an extremely valuable resource! Thanks to everyone who has
contributed, especially Jens and Dave. I hope I'll be able to give something
back to the community soon!

I have a model, 'Book', that has associations to several other models,
comments, tags, authors, etc.. I have implemented acts_as_ferret to search
the Book model and the associations as follows:

class Book < ActiveRecord::Base

...
#asociations
has_many :details
has_many :authors etc...
...
# acts as ferret implementation
acts_as_ferret :fields => [:title, :tag_list, :comments_list,
:details_value_list, :details_title_list, :author_names]

   def details_value_list
     return self.details.collect do |detail|
       detail.value
     end.join(",")
   end

   def details_title_list
     return self.details.collect do |detail|
       detail.title
     end.join(",")
   end

   def details_text
     return self.details.collect do |detail|
       detail.text_title + detail.text_value
       end.join(",")
   end

   def author_names
     return self.authors.collect do |authors|
       authors.name
       end.join (",")
   end
...

I can successfully search the Book model and all of its associations. Next,
I would like to print out in which field/association the hit occurred. For
example, I would like to print to the user whether the hit was in the book
title, a tag, in a comment or in the collection of authors, as I am only
printing the title of the book and some higher level details in the search
results.

Does anyone have suggestions? I have scoured the internet to no
avail...maybe I am not searching with the right terms?

Thank you kindly for any help,
Andy
_______________________________________________
Ferret-talk mailing list
[email protected]
http://rubyforge.org/mailman/listinfo/ferret-talk

Reply via email to