Ich bin gerade in Laravel (5.3) und habe über Eloquent Szenarien in meinem Kopf laufen versucht, herauszufinden, wie ich komplexere Beziehungen zwischen Modellen/Tabellen erreichen würde.Komplexe Beziehungen mit Laravel/Eloquent
In meinem Beispiel hier, ich baue eine Kontakte App. Benutzer haben viele Kontakte, das ist einfach. Der schwierigste Teil ist die Definition von Kontaktverbindungen. Angenommen, ein Benutzer hat zwei Kontakte, die Schwestern sind. Der Benutzer kann diese beiden Kontakte verbinden, um sich einfach zwischen ihnen zu bewegen. Der Benutzer kann einem Kontakt eine unbegrenzte Anzahl von Verbindungen zuweisen.
Also, ich habe offensichtlich eine Benutzer-Tabelle mit einer ID und einer Kontakt-Tabelle mit ID und einem Benutzer-ID-Feld, um es an einen Benutzer anzuhängen. Der Benutzer kann auch mehrere Verbindungsnamen erstellen. Wie "Schwester". Sobald der Benutzer einen neuen Verbindungsnamen erstellt hat, möchte ich ihn speichern, damit er später den gleichen Verbindungsnamen später mit einer Eingabehilfe oder etwas Ähnlichem verwenden kann. Die Tabelle connection_names enthält also Einträge, die an einen Benutzer gebunden sind.
Die Tabelle, mit der ich eine harte Zeit habe, ist die Pivot-Tabelle der tatsächlichen Verbindungen. Ich nehme an, es ist sowieso ein Pivot-Tisch. Immer noch irgendwie neu in der ganzen Terminologie. Das Diagramm sagt alles. Die Verbindungstabelle besteht im Grunde aus allen IDs, die sich mit anderen Tabellen verbinden. Zwei IDs aus der Kontakttabelle, die die Verbindung selbst herstellen, und eine weitere ID für den Namen der Verbindung.
Also zuerst, wie in der Welt habe ich die Modelle eingerichtet, um die Beziehungen Beziehungen in Laravel eloquent zu definieren? Und gibt es etwas, was ich besser oder sauberer machen könnte/sollte? Mache ich die Namenskonventionen auch korrekt für Laravel/Eloquent, um automatisch einen oder alle davon auszuwählen?
Danke! Ich gebe das eine Chance! – Mattaton