2010-04-19 5 views
0

Salut j'ai une relation entre 2 modèles. Les modèles sont "Catégorie" et "Page". J'ai maintenant le cas d'utilisation dont j'ai besoin 2 Pages/Category. Comment puis-je écrire cela? Les champs de catégorie sont "page_id" et "page_en_id".rails: has_many avec 2 champs de relations

Je ne sais pas quelle est la meilleure solution pour cela, je ne connais que la solution belongs_to et has_many avec une option de clé étrangère qui n'a aucun sens pour moi.

Répondre

2

Je ne suis pas sûr, ce que vous cherchez, mais ça ressemble à ça:

class Page < ActiveRecord::Base 
    has_many :categories 
    has_many :en_categories, :foreign_key => 'page_en_id', :class_name => 'Category' 
end 

class Category < ActiveRecord::Base 
    belongs_to :page 
end 
0

Ok c'est ma solution maintenant, merci les gars:

page

has_one :category 
has_one :category_en, :foreign_key => 'page_en_id', :class_name => 'Page' 

Catégorie

belongs_to :page 
belongs_to :page_en, :class_name => "Page" 
+0

ok, mais pas has_many relationshi p, mais has_one :) – fl00r

Questions connexes