I have following many to many relationship: class Service < ActiveRecord::Base has_many :service_dependencies has_many :dependents, :through => :service_dependencies end class ServiceDependency < ActiveRecord::Base belongs_to :service belongs_to :dependent, :class_name => ''Service'', :foreign_key => ''dependent_service_id'' end However, in my schema the MTM table service_dependencies has few relationship attributes as well, e.g. impact, severity, etc. along with the foreign keys. Right now, I''m displaying the dependent services'' fields in following manner: <%=h dependents.send("service_name") %> <% for dependents in @service.dependents %> <b>Service Name:</b><br> <%=h dependents.send("service_name") %><br> <% end %> I also want to display the relationship attributes, could someone please help me by letting me know how to access them in my view page? --~--~---------~--~----~------------~-------~--~----~ 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 -~----------~----~----~----~------~----~------~--~---
Hi, I found out the solution myself by refering to several examples and forums. It is as easy as this: <% for dependent in @service.dependents %> <b>Service Name:</b><br> <%=h dependent.send("service_name") %><br> <% dependency = @service.service_dependencies.find(:first, :conditions => ["dependent_service_id = ?", dependent.id])%> <b>Impact:</b><br> <%=h dependency.send("impact") %><br> <%end%> This may be helpful for some other beginner like me. Thanks and Regards, Vishu -- 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 -~----------~----~----~----~------~----~------~--~---
Mark Reginald James
2007-Mar-06 13:02 UTC
Re: MTM relationship with relationship attributes
Vishwaraj wrote:> Hi, > > I found out the solution myself by refering to several examples and > forums. It is as easy as this: > > <% for dependent in @service.dependents %> > <b>Service Name:</b><br> <%=h dependent.send("service_name") > %><br> > <% dependency = @service.service_dependencies.find(:first, > :conditions => > ["dependent_service_id = ?", dependent.id])%> > <b>Impact:</b><br> <%=h dependency.send("impact") %><br> > > <%end%> > > This may be helpful for some other beginner like me.Better would be <% sds = @service.service_dependents.find(:all, :include => :dependent) for service_dependent in sds %> <b>Service Name:</b><br> <%= h service_dependent.dependent.service_name %><br> <b>Impact:</b><br> <%= h service_dependent.impact %><br> <%end%> -- We develop, watch us RoR, in numbers too big to ignore. --~--~---------~--~----~------------~-------~--~----~ 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 -~----------~----~----~----~------~----~------~--~---