Ich habe einen Benutzer, der zu einem User_type gehört. Im Modell user_type gibt es ein Feld namens position, das die Standardsortierung bei der Anzeige von user_types und ihrer Benutzer behandelt.Rails group_by und Sortierung nach Feld in verwandtem Modell
Leider funktioniert dies nicht bei der Suche mit Ransack, also muss ich vom Benutzermodell suchen und group_by verwenden, um die Datensätze basierend auf ihrer user_type_id zu gruppieren.
Dies funktioniert perfekt, aber ich muss die Sortiermethode respektieren, die im user_type-Modell definiert ist. Dies ist ebenfalls dynamisch, daher gibt es keine Möglichkeit zu sagen, welche Sortierung das Benutzermodell hat.
Daher glaube ich, ich muss das group_by Array durchlaufen und die Sortierung manuell durchführen. Aber ich habe keine Ahnung, wo ich anfangen soll. Dies ist die Controller-Methode:
Wie manipuliere ich dieses Array zu einem Feld, dass in dem verwandten Modell zu sortieren?
default_scope keine gute Idee ist, in jedem Fall zu verwenden. Es kann zu unerwartetem Verhalten führen. Es ist besser, einen Bereich zu erstellen oder eine reine 'order'-Methode zu verwenden. –
Dies funktioniert nicht, da vom UserType keine Abfrage durchgeführt wird. –