FIND ALL OBJECT THROUGH ANOTHER OBJECT - HOW?

You need to join the fruits table to the query. One way to do this is

@apples = Apple.find(:all, :include => :fruits, ::conditions => ["fruit.user_id = 2"])

You could also use a :joins string to manual add the sql join clause, but this has the side effect of making the resultant Apple read only since it will contain bogus fields from the fruit table.