On Mar 20, 2013, at 6:04 PM, John Merlino wrote:

> I have this query:
> 
> Report.
>                    joins(:alerts).
>                    joins(:alert_code).

I think that you're looking for 'includes' rather than 'joins' for these 
associations.

Report.includes({:alerts => :alert_code}).

To use joins, you would have to supply more SQL-ish clauses, not symbols for 
the associations.

http://apidock.com/rails/v3.2.8/ActiveRecord/QueryMethods/joins
http://apidock.com/rails/v3.2.8/ActiveRecord/QueryMethods/includes

-Rob

>                    where(:unit_id => unit_id).
>                    where{time < my{self.time}}.
>                    where("alert_codes.name LIKE ?", "%Inside virtual
> fence%").
>                    order("reports.time DESC").first
> 
> Basically, it breaks:
> 
> ActiveRecord::ConfigurationError (Association named 'alert_code' was
> not found; perhaps you misspelled it?):
> 
> 
> My associations look like this:
> 
> report has_many alerts
> alert belongs_to :alert_code, :foreign_key => :code
> 
> I am trying to get the first report whose alerts belongs to alert_code
> whose name is "inside virtual fence". So there are 3 associations
> here. Trying to establish the connection.
> 
> -- 
> You received this message because you are subscribed to the Google Groups 
> "Ruby on Rails: Talk" group.
> To unsubscribe from this group and stop receiving emails from it, send an 
> email to rubyonrails-talk+unsubscr...@googlegroups.com.
> To post to this group, send email to rubyonrails-talk@googlegroups.com.
> For more options, visit https://groups.google.com/groups/opt_out.
> 
> 

-- 
You received this message because you are subscribed to the Google Groups "Ruby 
on Rails: Talk" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to rubyonrails-talk+unsubscr...@googlegroups.com.
To post to this group, send email to rubyonrails-talk@googlegroups.com.
For more options, visit https://groups.google.com/groups/opt_out.


Reply via email to