Heim >Datenbank >MySQL-Tutorial >Wie rufe ich Werte aus zusätzlichen Pivot-Tabellenspalten in Laravel ab?

Wie rufe ich Werte aus zusätzlichen Pivot-Tabellenspalten in Laravel ab?

Susan Sarandon
Susan SarandonOriginal
2024-11-09 15:09:02999Durchsuche

How to Retrieve Values from Additional Pivot Table Columns in Laravel?

Abrufen des Werts einer zusätzlichen Pivot-Tabellenspalte in Laravel

Beim Arbeiten mit Pivot-Tabellenbeziehungen in Laravels Eloquent ORM kann es vorkommen, dass Sie auf Folgendes stoßen: Sie müssen Werte aus zusätzlichen Spalten abrufen, die in der Pivot-Tabelle definiert sind. Während das bereitgestellte Snippet zeigt, wie man die Datenbank manuell abfragt, um den Preis zu erhalten, bietet Laravel eine elegantere Möglichkeit, auf Pivot-Tabellendaten zuzugreifen.

Durch die Konfiguration der Pivot-Spalten beim Definieren der Beziehung können Sie sicherstellen, dass dies der Fall ist im Pivot-Objekt enthalten:

return $this->belongsToMany('Role')->withPivot('foo', 'bar');

Dies konfiguriert die Beziehung so, dass sie die Spalten „foo“ und „bar“ aus dem Pivot einschließt Tabelle.

Um den Preis eines bestimmten Telefonmodells mit einem bestimmten Telefonproblem abzurufen, können Sie den folgenden Code verwenden:

$price = $model
    ->problems()
    ->where('phone_problem', $problem->id)
    ->first()
    ->pivot
    ->price;

Dieser Code ruft das Telefonmodell ab und filtert das zugehörige Telefon Probleme anhand der spezifischen Problem-ID und ruft dann den Preiswert aus der Pivot-Tabelle ab.

Durch die Nutzung der Leistung der integrierten Pivot-Tabellenunterstützung von Laravel können Sie zusätzliche Pivots effizient abrufen und verwalten Tabellenspalten in Ihren Eloquent-Modellen.

Das obige ist der detaillierte Inhalt vonWie rufe ich Werte aus zusätzlichen Pivot-Tabellenspalten in Laravel ab?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn