Ich versuche eine gute (und schnelle) Lösung für das folgende Problem zu finden:
Ich habe zwei Modelle, mit denen ich arbeite. Nennen wir sie Spieler und Teams. Ein Spieler kann in mehreren Teams sein und ein Team kann mehrere Spieler haben. Ich arbeite daran, ein UI-Element in einem Formular zu erstellen, mit dem ein Benutzer mehrere Teams auswählen kann (Kontrollkästchen). Da der Benutzer Teams auswählt (oder die Auswahl aufhebt), möchte ich die von den Spielern gruppierten Teams anzeigen.
Also zum Beispiel:
Wenn die ausgewählten Teams keine Spieler haben, die sich überschneiden, hätte jedes Team einen eigenen Abschnitt.
Wenn der Benutzer zwei Teams auswählt und dieselben Spieler hat, gibt es einen Abschnitt, der die Namen der beiden Teams und aller Spieler enthält.
Wenn TEAM_A Spieler [1, 2, 4, 5] und TEAM_B Spieler [1, 3, 5, 6] hat. Es würde die folgenden Abschnitte geben: SECTION_X = [TEAM_A, TEAM_B, 1, 5], SECTION_Y = [TEAM_A, 2, 3], SECTION _Z = [TEAM_B, 3, 5]
Ich hoffe das ist klar. Im Wesentlichen möchte ich die Teams finden, die die Spieler gemeinsam haben, und mich danach gruppieren. Ich dachte, vielleicht gibt es eine Möglichkeit, dies durch Navigieren in einem zweigeteilten Diagramm zu tun? Ich bin mir nicht ganz sicher, wie und ich könnte es überdenken. Ich hatte gehofft, dies zu tun, indem ich eine Art Datenstruktur auf dem Server erstellte und auf dem Client verwendete. Ich würde gerne Ihre Vorschläge hören und freue mich über jede Hilfe, die Sie geben können!
Team
ein Feld mit dem Namen haben sollplayers
, das eine Viele-zu-Viele-Beziehung zu Ihrem anderen Modell erfordertPlayer
. Auf diese Weise können Sie abrufen, welche Spieler in jedem Team sind und welche Teams jedem Spieler zugeordnet sind.