Heim > Backend-Entwicklung > Golang > Fehlende Felder in der GORM-Suchmethode

Fehlende Felder in der GORM-Suchmethode

WBOY
Freigeben: 2024-02-13 20:40:09
nach vorne
1258 Leute haben es durchsucht

GORM 查找方法中缺少字段

Der PHP-Editor Xinyi stößt bei der Verwendung von GORM manchmal auf ein Problem: In der Suchmethode fehlen in den zurückgegebenen Ergebnissen einige Felder. Dies kann daran liegen, dass wir dem Feld beim Definieren der Struktur keine Beschriftung hinzugefügt haben. In GORM können Sie mithilfe von Tags festlegen, wie Felder in der Datenbank zugeordnet werden. Um dieses Problem zu lösen, müssen wir daher jedem Feld in der Struktur die richtige Beschriftung hinzufügen, um sicherzustellen, dass die Werte aller Felder bei der Abfrage korrekt zurückgegeben werden können.

Frageninhalt

Es wird versucht, die GORM-Methode find zu verwenden, um die Werte der Datenbanktabelle abzurufen, es werden jedoch nicht die Werte aller Felder zurückgegeben. Die Tabellenstruktur ist

CREATE TABLE `company` (
  `id` varchar(36) NOT NULL,
  `createdAt` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP,
  `updatedAt` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP,
  `name` varchar(255) NOT NULL,
  `newId` varchar(255) NOT NULL,
  PRIMARY KEY (`id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8;
Nach dem Login kopieren

In company.go definieren wir die Unternehmensstruktur als:

package entities

import "time"

type Company struct {
    Id        string    `json:"id" gorm:"column:id;primaryKey"`
    CreatedAt time.Time `json:"createdAt" gorm:"column:createdAt"`
    UpdatedAt time.Time `json:"updatedAt" gorm:"column:updatedAt"`
    Name      string    `json:"name" gorm:"column:name"`
    NewId     string    `json:"newId" gorm:"column:newId"`
}
Nach dem Login kopieren

Verwenden Sie im Controller Companies.go den folgenden Code, um die Daten abzurufen,

var companys []entities.Company
    result := db.Find(&companys)
    c.JSON(http.StatusOK, &result)
Nach dem Login kopieren

In Postman wird nur der Wert der Felder Name und ID zurückgegeben. Die übrigen Felder enthalten leere Werte. Was könnte das Problem sein?

Ich habe versucht, alle Felder mit der Suchmethode von GORM abzurufen, aber es werden mir nur zwei Felder angezeigt

Die Daten in der Tabelle lauten wie folgt:

Workaround

Wie in der Dokumentation angegeben ist , createdAtupdatedAt是由GORM管理的,所以你可以留下 gorm Tag?

Das obige ist der detaillierte Inhalt vonFehlende Felder in der GORM-Suchmethode. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Quelle:stackoverflow.com
Erklärung dieser Website
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
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage