Betrachten Sie die folgende Tabellenstruktur:Eloquent Modell Beziehung für Zwischentabelle
user table
id
name
lang_region_id
lang_region table
id
lang_id
region_id
lang table
id
name
region table
id
name
ziemlich neu in dem Laravel Rahmen, sondern versucht, Setup Eloquent Modelle und Beziehungen zu einer vorhandenen Datenbank. Ich möchte die Beziehung zwischen meinem Benutzermodell und den Lang- und Regionsmodellen festlegen. Die Tabelle lang_region definiert, welche Kombinationen aus Sprache und Region verfügbar sind, und dann können wir jeden Benutzer mit einer gültigen Kombination verknüpfen.
Ich habe die Laravel-Dokumentation mehrmals durchgelesen, um den richtigen Beziehungstyp zu finden, aber es scheint, dass die Viele zu Viele und Viele Beziehungen sind nah, aber da unsere user.id nicht in der Zwischentabelle verwendet wird Ich habe vielleicht kein Glück.
Sorry für die Amateur-Frage, aber nur an Laravel und ORMs im Allgemeinen gewöhnen.
Sie sollten eine Pivot-Tabelle verwenden. Dann funktioniert Eloquent großartig – Mojtaba
Das war mein erster Gedanke, aber es sieht so aus, als ob die redegewandten Beziehungen mit Pivot-Tabellen darauf angewiesen sind, dass die IDs in der Pivot-Tabelle existieren und die Tabellen auf dieser Tabelle schwenken. Die lang_region-Tabelle ist meine Pivot-Tabelle, da sie lang_id und region_id enthält, aber das Problem, das ich lösen möchte, ist, dass meine Benutzertabelle nur einen Fremdschlüssel für eine lang_region-Zeile hat und ich für die angegebene lang_region Zugriff auf die lang habe Benutzer. – JamieA
Sind Sie sicher, dass Ihre Datenbankstruktur durchdacht ist? erklären, warum die lang_region-Tabelle das Teil ist, muss darauf verwiesen werden? –