Could you be more specific about what is not working?
  -- Are your association methods between Role and User being set up 
correctly?  (If not, make sure your statement is 
"has_and_belongs_to_many", and not "hasandbelongstomany".)
  -- Are you storing the data for role_name in the index?  If so, can 
you see it there?

I'm not familiar with the find_with_ferret method (because I use 
index.search_each).  However, in my code I do have a case where I do 
something like your role_name method, and the output gets indexed.

   --Paul

Rolf Guescini wrote:
> Hi there, I have now read a lot of pages on doing find_with_ferret with
> associations, and still can't grasp how to solve my specific situation.
> I might be dense when not seeing how to apply the info I have read to my
> situation, so I will try to start this topic in hope that it might also
> be usefuls for others in the same situation:
> 
> I have user objects with roles so my user object has:
>   hasandbelongstomany :roles
> while my role object has
>    hasandbelongstomany :users
> 
> I thought then that I could do a :
> acts_as_ferret :fields => [:name, :role_name], :remote => false
> 
> and:
> 
>  def role_name
>     self.roles.collect{ |role| role.name}.join(" ")
>   end
> 
> and then do the following:
> 
> find_with_ferret "*#{q}*", :page => page, :per_page => 10,:order =>
> 'name', :conditions => ["role_name = #{role}"]
> 
> I have also tried many other constellations with multiple and include
> and not getting it right because I did not see how to apply it to my
> situation.
> 
> Does anyone have a suggestion ?

-- 
Posted via http://www.ruby-forum.com/.
_______________________________________________
Ferret-talk mailing list
[email protected]
http://rubyforge.org/mailman/listinfo/ferret-talk

Reply via email to