Heim > Backend-Entwicklung > Golang > Wie kann ich mit Go kleingeschriebene Strukturfelder in CouchDB und JSON einbinden?

Wie kann ich mit Go kleingeschriebene Strukturfelder in CouchDB und JSON einbinden?

DDD
Freigeben: 2024-12-02 09:24:14
Original
145 Leute haben es durchsucht

How Can I Include Lowercase Struct Fields in CouchDB and JSON Using Go?

Strukturfelder in CouchDB und JSON verfügbar machen

Beim Verwenden einer Go-Bibliothek für den Zugriff auf CouchDB sind Benutzer auf ein Problem gestoßen, bei dem nur Strukturfelder gestartet wurden mit Großbuchstaben werden der Datenbank hinzugefügt oder in JSON serialisiert.

Dieses Verhalten ergibt sich aus den Sichtbarkeitsregeln der Go-Sprache. Felder in einer Struktur werden nur dann exportiert, also außerhalb des aktuellen Pakets zugänglich, wenn sie mit Großbuchstaben beginnen. Bei der JSON-Kodierung und -Dekodierung werden nur exportierte Felder erkannt.

Es ist jedoch möglich, über JSON-Tags auf nicht großgeschriebene Felder zuzugreifen. Durch das Hinzufügen von Tags zu einem Strukturfeld können Sie den gewünschten JSON-Schlüsselnamen angeben. Beispiel:

type Sample struct {
    Name string `json:"name"`
    age  int    `json:"age"`
}
Nach dem Login kopieren

In diesem Fall werden sowohl die Felder „Name“ als auch „Alter“ in JSON mit den Schlüsseln „Name“ bzw. „Alter“ serialisiert. Dadurch können Sie Felder in Kleinbuchstaben in Ihrer Struktur verwenden und sie dennoch in Datenbankoperationen oder JSON-Serialisierung einbeziehen.

Das obige ist der detaillierte Inhalt vonWie kann ich mit Go kleingeschriebene Strukturfelder in CouchDB und JSON einbinden?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Quelle:php.cn
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