Rumah > pembangunan bahagian belakang > Golang > Medan tiada dalam kaedah carian GORM

Medan tiada dalam kaedah carian GORM

WBOY
Lepaskan: 2024-02-13 20:40:09
ke hadapan
1259 orang telah melayarinya

GORM 查找方法中缺少字段

Editor PHP Xinyi kadangkala menghadapi masalah apabila menggunakan GORM: dalam kaedah carian, hasil yang dikembalikan kehilangan beberapa medan. Ini mungkin kerana kami tidak menambah label pada medan semasa menentukan struktur. Dalam GORM, anda boleh menentukan cara medan dipetakan dalam pangkalan data dengan menggunakan tag. Oleh itu, untuk menyelesaikan masalah ini, kita perlu menambah label yang betul pada setiap medan dalam struktur untuk memastikan bahawa nilai semua medan boleh dikembalikan dengan betul semasa membuat pertanyaan.

Kandungan soalan

Cuba menggunakan kaedah GORM find untuk mendapatkan nilai jadual pangkalan data, tetapi ia tidak mengembalikan nilai semua medan. Struktur meja ialah,

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;
Salin selepas log masuk

Dalam company.go, kami mentakrifkan struktur syarikat sebagai,

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"`
}
Salin selepas log masuk

Dalam syarikat pengawal.go, gunakan kod berikut untuk mendapatkan data,

var companys []entities.Company
    result := db.Find(&companys)
    c.JSON(http.StatusOK, &result)
Salin selepas log masuk

Dalam posmen ia hanya mengembalikan nilai nama medan dan id. Medan selebihnya mempunyai nilai kosong. Apa yang boleh menjadi masalah?

Saya cuba mendapatkan semua medan menggunakan kaedah cari GORM tetapi ia hanya memberi saya dua medan

Data dalam jadual adalah seperti berikut,

Penyelesaian

Seperti yang dinyatakan dalam dokumentasi , createdAtupdatedAt是由GORM管理的,所以你可以留下 gorm tag?

Atas ialah kandungan terperinci Medan tiada dalam kaedah carian GORM. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

sumber:stackoverflow.com
Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan