Hi every body, I have a database containing around 15 tables. There are lots of relationships. Now if I need to add a query involving say 8 tables(a,b,c,d,e,f,g,h) can I do it using find_by_sql. If so where do I implement the method, inside the class of which table. Thanks -- Posted via http://www.ruby-forum.com/. --~--~---------~--~----~------------~-------~--~----~ 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-/JYPxA39Uh5TLH3MbocFFw@public.gmane.org To unsubscribe from this group, send email to rubyonrails-talk-unsubscribe-/JYPxA39Uh5TLH3MbocFFw@public.gmane.org For more options, visit this group at http://groups.google.com/group/rubyonrails-talk?hl=en -~----------~----~----~----~------~----~------~--~---
On 17 Jan 2008, at 12:00, Pankaj jyoti Barua wrote:> > Hi every body, > > I have a database containing around 15 tables. There are lots of > relationships. Now if I need to add a query involving say 8 > tables(a,b,c,d,e,f,g,h) can I do it using find_by_sql.You can do anything you want pretty much using find_by_sql> If so where do I > implement the method, inside the class of which table.If you call Foo.find_by_sql will return an array of objects of class Foo. With that in mind it''s completely up to you Fred> > > Thanks > -- > Posted via http://www.ruby-forum.com/. > > >--~--~---------~--~----~------------~-------~--~----~ 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-/JYPxA39Uh5TLH3MbocFFw@public.gmane.org To unsubscribe from this group, send email to rubyonrails-talk-unsubscribe-/JYPxA39Uh5TLH3MbocFFw@public.gmane.org For more options, visit this group at http://groups.google.com/group/rubyonrails-talk?hl=en -~----------~----~----~----~------~----~------~--~---
Frederick Cheung wrote:> On 17 Jan 2008, at 12:00, Pankaj jyoti Barua wrote: > >> >> Hi every body, >> >> I have a database containing around 15 tables. There are lots of >> relationships. Now if I need to add a query involving say 8 >> tables(a,b,c,d,e,f,g,h) can I do it using find_by_sql. > You can do anything you want pretty much using find_by_sql >> If so where do I >> implement the method, inside the class of which table. > > If you call Foo.find_by_sql will return an array of objects of class > Foo. With that in mind it''s completely up to you > > FredThanks. So I will have to create a class called foo. From where should I call foo. Actually I have created the database using migration and I have implemented a cgi script that gives a front end to query the database. I am finding problem with some queries now which are preety complex. -- Posted via http://www.ruby-forum.com/. --~--~---------~--~----~------------~-------~--~----~ 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-/JYPxA39Uh5TLH3MbocFFw@public.gmane.org To unsubscribe from this group, send email to rubyonrails-talk-unsubscribe-/JYPxA39Uh5TLH3MbocFFw@public.gmane.org For more options, visit this group at http://groups.google.com/group/rubyonrails-talk?hl=en -~----------~----~----~----~------~----~------~--~---
It would be better to use Model.connection.execute, this will take an sql command, and the name that goes into the log file. WW On Jan 17, 7:49 am, Pankaj jyoti Barua <rails-mailing-l...@andreas- s.net> wrote:> Frederick Cheung wrote: > > On 17 Jan 2008, at 12:00, Pankaj jyoti Barua wrote: > > >> Hi every body, > > >> I have a database containing around 15 tables. There are lots of > >> relationships. Now if I need to add a query involving say 8 > >> tables(a,b,c,d,e,f,g,h) can I do it using find_by_sql. > > You can do anything you want pretty much using find_by_sql > >> If so where do I > >> implement the method, inside the class of which table. > > > If you call Foo.find_by_sql will return an array of objects of class > > Foo. With that in mind it''s completely up to you > > > Fred > > Thanks. > > So I will have to create a class called foo. From where should I call > foo. Actually I have created the database using migration and I have > implemented a cgi script that gives a front end to query the database. > I am finding problem with some queries now which are preety complex. > -- > Posted viahttp://www.ruby-forum.com/.--~--~---------~--~----~------------~-------~--~----~ 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-/JYPxA39Uh5TLH3MbocFFw@public.gmane.org To unsubscribe from this group, send email to rubyonrails-talk-unsubscribe-/JYPxA39Uh5TLH3MbocFFw@public.gmane.org For more options, visit this group at http://groups.google.com/group/rubyonrails-talk?hl=en -~----------~----~----~----~------~----~------~--~---
On Jan 17, 4:00 am, Pankaj jyoti Barua <rails-mailing-l...@andreas- s.net> wrote:> I have a database containing around 15 tables. There are lots of > relationships. Now if I need to add a query involving say 8 > tables(a,b,c,d,e,f,g,h) can I do it using find_by_sql. If so where do I > implement the method, inside the class of which table.Just pick one. :) It doesn''t much matter to you what kind of object is returned by find_by_sql (or connection.execute). It''ll have attributes for every column in the SELECT. So pick one as a "controller" (our term, not Rails'') and go through it. It''s really just a matter of self- documentation. In what model would you look for this method? ///ark --~--~---------~--~----~------------~-------~--~----~ 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-/JYPxA39Uh5TLH3MbocFFw@public.gmane.org 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 -~----------~----~----~----~------~----~------~--~---