2012-07-24 2 views
6

Dites que j'ai un modèle de type A, et un modèle de type B, qui a les champs a_id a2_id. Je veux avoir quelque chose comme:Rails multiples appartient à la même classe

class B 
    belongs_to :a 
    belongs_to :a (using a2) 
end 

Est-ce que quelqu'un sait comment je le ferais? J'essaie d'utiliser la classe B pour lier des objets similaires dans ma base de données.

Répondre

6

Vous pouvez le faire

class B 
    belongs_to :a 
    belongs_to :a2, foreign_key: 'a2_id', class_name: 'A' 
end 
+0

Merci je vais donner ce soir un essai. – joncalhoun

2

ou même ceci:

class B < ActiveRecord::Base 
    attr_accessible :a2_id, :a_id, :name 
    belongs_to :a 
    belongs_to :a2, class_name: "A" 
end 
Questions connexes