Ich habe ein Spielmodell, das has_many: Texte hat. Das Problem ist, dass ich die Texte anders bestellen muss, je nachdem, zu welchem Spiel sie gehören (ja, hässlich, aber es sind alte Daten). Ich habe eine Text.in_game_order_query(game)
Methode erstellt, die die entsprechende Reihenfolge zurückgibt.Bezug nehmend auf Instanz in has_many (Schienen)
Meine Lieblingslösung wäre gewesen, einen Standardbereich in das Textmodell zu setzen, aber das würde erfordern, zu wissen, zu welchem Spiel sie gehören. Ich möchte auch keine separaten Klassen für die Texte für jedes Spiel erstellen - es gibt viele Spiele, mit mehr kommen, und alle neueren werden die gleiche Reihenfolge verwenden. So hatte ich eine andere Idee: Texte in der has_many Bestellung, wenn weiß ich, welches Spiel sie sind Teil von:
has_many :texts, :order => Text.in_game_order_query(self)
jedoch selbst ist die Klasse hier, so das nicht funktioniert.
Gibt es wirklich keine andere Lösung als @game.texts.in_game_order(@game)
jedes Mal aufrufen ??
Die doppelten geschweiften Klammern geben mir einen Syntaxfehler, und mit nur einer Menge von {} um es heißt "Kann Proc nicht besuchen". – Sprachprofi
Sorry Tippfehler. Nur eine Reihe von Klammern. Aber ich bin mir nicht sicher, ob das klappt: Ordnung überhaupt. Ich benutze es mit: Bedingungen. Vielleicht, wenn proc nicht funktioniert, versuchen Lambda oder Proc. Neu –