2011-03-11 1 views
1

En ce moment j'ai créé des méthodes comme celui-ci ..Comment configurer la relation dans ce scénario?

class TestMessage < ActiveRecord::Base 
    def test 
    Test.find(:first,:conditions => ["test_uri = ?",self.sfl_test_uri]) 
    end 
end 

class Test < ActiveRecord::Base 
    def test_messages 
    TestMessage.find(:all,:conditions => ["sfl_test_uri = ?",self.test_uri]) 
    end 
end 

Comment puis-je convertir en relation?

+0

[autoréférentielle Association] (http://railscasts.com/episodes/163-self-referential-association) – akrisanov

Répondre

2

Essayez quelque chose comme:

class TestMessage < ActiveRecord::Base 
    belongs_to :test, :foreign_key => :sfl_test_uri, :primary_key => :test_uri 
end 

class Test < ActiveRecord::Base 
    has_many :test_messages, :foreign_key => :sfl_test_uri, :primary_key => :test_uri 
end 
+0

Puis-je utiliser: Relie et: inclure les deux ensemble avec cette relation? TestMessage.find (: all,: jointures =>: test,: include =>: test) –

+0

Il suffit de l'inclure: TestMessage.include (: test) et le test sera chargé avec impatience ... Pas besoin de se joindre ... – Yannis

Questions connexes