Ruby on Rails Friday, June 29, 2012

Perception 1:

I'm not sure but according to the Sql Query that you put here it seems that there's a table in your application database called
"campaign_sites" not "sites" (or maybe you have another table sites which can't be perceived from this report here or you're doing
kind of an aliasing or something!) and if you wanted to order by the name of a campaign site I think you should change
the "sites.name" to "campaign_sites.name"

Because this query seems straightforward you joined the campaign and campaign_site on the campaign_id (according to your has_many|belongs_to association)
and then you want the result to be ordered by campaign_site's name I guess.

Perception 2:
The other perception here form the Sql Query and more specifically the part -> "campaign_sites.site_id = 11377" is that site_id is a foreign key to a sites table
in your campaign_sites table and if that's the case because you didn't include the "sites" table in your JOIN mechanism then it can't find sites.name cause
there is no sites in the query join result from your tables. (you only have tables -> campaigns and campaign_sites in the JOIN)

Hope that helps. But I think a little more explanation about your model relationships (campaign, campaign_sites, [sites if there's such a thing]) can be helpful so we can understand the problem better and maybe
give you better answers.

Good Luck ;)

--
Sam Serpoosh
Software Developer: http://masihjesus.wordpress.com
Twitter @masihjesus

--
You received this message because you are subscribed to the Google Groups "Ruby on Rails: Talk" group.
To post to this group, send email to rubyonrails-talk@googlegroups.com.
To unsubscribe from this group, send email to rubyonrails-talk+unsubscribe@googlegroups.com.
For more options, visit this group at http://groups.google.com/group/rubyonrails-talk?hl=en-US.

No comments:

Post a Comment