editor php Yuzai memperkenalkan anda kepada kaedah mengimport struktur dalam JSON dan menamakan semula, iaitu menggunakan kata kunci "GO". Dalam JSON, kita selalunya perlu menggunakan struktur yang ditentukan, tetapi kadangkala kita perlu menamakan semula struktur tersebut untuk memenuhi keperluan tertentu. Menggunakan kata kunci "GO", kami boleh menamakan semula struktur sambil mengimportnya untuk memenuhi keperluan kami dengan lebih baik. Kaedah ini mudah dan mudah digunakan, membolehkan kami memproses data JSON dengan lebih fleksibel. Seterusnya, mari belajar tentang langkah-langkah khusus!
Saya mencipta pangkalan data menggunakan gorm. Untuk melakukan ini, saya mencipta struktur dan mencipta jadual menggunakan struktur itu. Setakat ini, begitu baik. Pada bahagian belakang, semuanya berfungsi dengan baik, tetapi pada bahagian hadapan, masalahnya ialah panggilan json sentiasa mengembalikan id huruf besar, manakala swagger menjana id huruf kecil. Adakah terdapat cara untuk mengatasi struct yang diimport daripada gorm menggunakan pengecam json?
import "gorm.io/gorm" type report struct { gorm.model createdby user `gorm:"foreignkey:createdbyuserid" json:"createdby"` archived bool `json:"archived"` }
Struktur ini memberi saya respons berikut
{ "ID": 8, "CreatedAt": "2022-11-15T20:45:16.83+01:00", "UpdatedAt": "2022-12-27T21:34:17.871+01:00", "DeletedAt": null "createdBy": { "ID": 1, "CreatedAt": "2022-11-15T20:02:17.497+01:00", "UpdatedAt": "2022-11-15T20:02:17.497+01:00", ... }, "archived": true, }
Adakah cara untuk menjadikan id huruf kecil (seperti archived
)? Atau saya boleh melaraskannya dalam swaggo supaya ia menjana dalam huruf besar.
Apa yang saya lihat ialah anda boleh membuat jadual tanpa ini gorm.model
dan tentukan sendiri semua sifat. Masalahnya ialah saya perlu mencipta semua fungsi lajur ini sendiri (padam, kemas kini, indeks, kunci utama...).
Saya mencipta gorm-model-struct saya sendiri:
type gormmodel struct { id uint `gorm:"primarykey" json:"id"` createdat time.time `json:"createdat"` updatedat time.time `json:"updatedat"` deletedat gorm.deletedat `gorm:"index" json:"deletedat"` } //@name models.gormmodel
Saya mengimport struktur ini ke dalam struktur lain:
type Report struct { GormModel CreatedBy User `gorm:"foreignKey:CreatedByUserID" json:"createdBy"` Archived bool `json:"archived"` }
Adalah penting anda menambah json-key dan menetapkan nama sifat.
Atas ialah kandungan terperinci GO: import struct dan namakan semula dalam json. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!