Heim  >  Artikel  >  Backend-Entwicklung  >  Erstellen Sie eine umgekehrte Abfrage „hat eine' Beziehung GORM

Erstellen Sie eine umgekehrte Abfrage „hat eine' Beziehung GORM

WBOY
WBOYnach vorne
2024-02-08 21:08:541147Durchsuche

创建反向查询“有一个”关系 GORM

php-Editor Youzi führt Sie in die umgekehrte Abfrage in GORM ein. In GORM können wir eine umgekehrte Abfrage implementieren, indem wir eine „hat ein“-Beziehung erstellen. Auf diese Weise können wir die Informationen des zugehörigen Modells problemlos im zugehörigen Modell abrufen. Die Einstellung dieser Beziehung kann uns helfen, Daten effizienter zu verarbeiten und die Abfrageleistung und Lesbarkeit zu verbessern. Unabhängig davon, ob es sich um eine Eins-zu-eins- oder eine Eins-zu-viele-Beziehung handelt, bietet GORM eine einfache und flexible Möglichkeit, umgekehrte Abfragen zu erstellen. Als Nächstes werfen wir einen genaueren Blick darauf, wie die Beziehung „has a“ in GORM verwendet wird, um eine umgekehrte Abfrage zu erstellen.

Frageninhalt


Ich versuche derzeit, neue Datensätze mit GORM zu erstellen, zwei Modellen, die eine Eins-zu-Eins-Beziehung zueinander haben. Modell1 hat eine „hat eine“-Beziehung mit Modell2. Ich frage mich, ob ich in diesem Fall eine Abfrage für Model2 anstelle von Model1 erstellen kann. Hier ist ein Beispiel aus der Dokumentation:

Ist es also im Dokumentkontext möglich, eine Abfrage aus der CreditCard-Struktur zu erstellen, da ich die Beziehung „hat ein“ beibehalten möchte.


Lösung


Ich habe dieses Problem erfolgreich gelöst! Sie müssen lediglich die Fremdschlüssel in das Strukturmodell einbeziehen, wenn Sie es erstellen. Zum Beispiel:

CreditCard{
    Number: "41111111111111"
    UserID: <include the id here> // make sure the credit card gorm model has UserID foreign key specified
}
db.Create(&CreditCard)

Das obige ist der detaillierte Inhalt vonErstellen Sie eine umgekehrte Abfrage „hat eine' Beziehung GORM. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Dieser Artikel ist reproduziert unter:stackoverflow.com. Bei Verstößen wenden Sie sich bitte an admin@php.cn löschen
Vorheriger Artikel:InstanziierungsschnittstelleNächster Artikel:Instanziierungsschnittstelle