Suchen Sie die Zuordnungen für eine ActiveRecord-Klasse zur Laufzeit?

8

Ich möchte die Assoziationen einer ActiveRecord-Klasse zur Laufzeit finden ...

Nehmen wir an, ich habe folgendes:

%Vor%

Wie kann ich zur Laufzeit herausfinden, dass die Person "viele" Stühle und Stifte hat und umgekehrt? Ich suche nach einer Methode, die ein Array von Strings zurückgibt (wenn eine solche Methode existiert). d. h.

%Vor%

würde zurückkehren:

%Vor%

und

%Vor%

würde zurückkehren:

%Vor%

Vermisse ich eine Methode wie diese, die es gibt?

Danke für Ihre Hilfe.

    
JP Richardson 13.03.2009, 21:40
quelle

2 Antworten

25

Ich denke, die Klasse ActiveRecord :: Reflection ist möglicherweise das, wonach Sie suchen. Aus der Dokumentation:

%Vor%     
Angela 13.03.2009, 21:49
quelle
0

Klingt wie eine ziemlich dumme Sache, Laufzeit zu machen. Was genau willst du erreichen? Ich nehme an, dass es für jedes Problem eine einfache und häufig verwendete Lösung gibt.

Wenn ich müsste, würde ich TheModel.read_inheritable_attribute(:reflections) verwenden.

    
August Lilleaas 13.03.2009 22:07
quelle