On 25 Jan 2009, at 04:09, Sachin Kale wrote:

>
> Hi
>
> I have following models
>
> 1. employee
>
> 2. transaction
>
> Requirement - A transaction has a dealer(employee) and a
> driver(employee).
>
> I experimented following
> ---------
>
> I have put -
>
> /models/employee.rb :
>
> has_many :transactions, :as => :dealer
> has_many :transactions, :as => :driver

you're misusing :as here - that's for something completely different
>
>
> /models/transaction.rb :
>
> belongs_to :dealer, :class => :employee, :foreign_key => :employee_id
> belongs_to :driver, :class => :employee, :foreign_key => :employee_id
>
>
> Transaction table has columns - dealer_id, driver_id,

If that's the case then the :foreign_key option should be  'dealer_id'  
and 'driver_id' (and thus unnecessary as that's the default).  
The :class option is also supposed to be :class_name
I've got an example of something similar here: 
http://www.spacevatican.org/2008/5/6/creating-multiple-associations-with-the-same-table
Lastly, be wary of associations called transaction before Rails 2.3 -  
the transaction method created by the association will stomp on an  
internal method

Fred
>
> ------------------
> Now the problem is how can I get something like  
> @transaction.dealer.name
> or
> employee.transactions
>
> ------------
> I certainly know that my experiment has basic flaws of understanding
> associations.
>
> Please help me!
> -- 
> 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 [email protected]
To unsubscribe from this group, send email to 
[email protected]
For more options, visit this group at 
http://groups.google.com/group/rubyonrails-talk?hl=en
-~----------~----~----~----~------~----~------~--~---

Reply via email to