jeder. Ich habe eine Idee Active zu nutzen, um etwas seltsam wie im folgenden Beispiel zu implementieren:Wie kann sich die Activetrecord-Tabelle von Rails auf sich selbst beziehen?
SystemInfo < ActiveRecord::Base
belongs_to :SystemInfo
end
Die Idee ist, System A System B enthalten als Kind kann. Also werde ich Anwendung Skelett erzeugen, wie:
script/generate scaffold SystemInfo parent_id:integer name:string
und dann, wenn ich System A einlegen, wird I des Systems A-ID als System B des parent_id (System A der parent_id wird gleich 'Null' verwenden und wenn ich das verwenden. Befehl wie folgt aus:
sysA = SystemInfo.find_by_id(1) # Get System A
ich denke, das möglich ist, System A zu bekommen, und es ist Kind, System B. ähnlich:
sysA.childrens # Get System B and other SystemInfo which has parent_id == 1 (System A's ID)
Könnten Sie Richtlinie vorschlagen, für mich, diese Idee umzusetzen ich? thi Das ist eine ziemlich verbreitete Idee und wir sollten es tun können. ;)
Danke, Erik. Ich habe Ihre Lösung versucht, aber wenn ich es in der Konsole erneut test es zeigen etwas wie unten: reload! Nachladen ... => true >> SysInfo.find (: all) SysInfo.find (: all) Argument: Unknown Taste (n): Klasse Ich benutze Rails 2.3.3. Kannst du mir erklären wieso könnte ich nicht wie du? – Teerasej
Ich habe gefunden, was ich verbessern muss. Ich muss ': class_name' anstelle von ': class' verwenden (möglicherweise aus einer neuen Rails-Version). Vielen Dank, Erik! Ich wähle deine Antwort! ;) – Teerasej
Danke, Teerasej. Ich habe die Antwort aktualisiert, um korrekt zu sein. – erik