Gorm: Ubah nama kolom yang dihasilkan secara default

Dibuat pada 18 Mei 2017  ·  3Komentar  ·  Sumber: go-gorm/gorm

Hai, apakah mungkin untuk mengganti nama kolom: ID, Created_at, updated_at, Deleted_at ?

Sejauh yang saya tahu saya dapat mengatur misalnya nama tabel dengan fungsi:

func (StructType) TableName() string {
    return "MyCustomName"
}

Apakah mungkin tetapi dengan kolom? ini karena model data proyek sudah menetapkan nama bidang, dan misalnya kami tidak memiliki _updated_at_ tetapi _ModificationTimestamp_ jadi, bagaimana saya bisa melakukannya?

Komentar yang paling membantu

Hanya saja, jangan menyematkan mode default di struct Anda. Jika Anda melihat bagaimana itu didefinisikan, Anda akan melihat:

type Model struct {
    ID        uint `gorm:"primary_key"`
    CreatedAt time.Time
    UpdatedAt time.Time
    DeletedAt *time.Time `sql:"index"`
}

Anda dapat menentukan bidang ini dalam model Anda sendiri atau membuat model dasar Anda sendiri dengan nama yang berbeda dan menyematkannya.

Semua 3 komentar

http://jinzhu.me/gorm/models.html#conventions

// Overriding Column Name
type Animal struct {
    AnimalId    int64     `gorm:"column:beast_id"`         // set column name to `beast_id`
    Birthday    time.Time `gorm:"column:day_of_the_beast"` // set column name to `day_of_the_beast`
    Age         int64     `gorm:"column:age_of_the_beast"` // set column name to `age_of_the_beast`
}

@smacker Hai, terima kasih. Tapi saya sebenarnya mencoba membuat gorm untuk mengambil nama lain untuk kolom yang dibuat otomatis: create_at, updated_at, id. Saya mencoba apa yang Anda katakan tetapi memberikan kesalahan karena misalnya kolom create_at sudah ditentukan:
column "created_at" specified more than once)

Hanya saja, jangan menyematkan mode default di struct Anda. Jika Anda melihat bagaimana itu didefinisikan, Anda akan melihat:

type Model struct {
    ID        uint `gorm:"primary_key"`
    CreatedAt time.Time
    UpdatedAt time.Time
    DeletedAt *time.Time `sql:"index"`
}

Anda dapat menentukan bidang ini dalam model Anda sendiri atau membuat model dasar Anda sendiri dengan nama yang berbeda dan menyematkannya.

Apakah halaman ini membantu?
0 / 5 - 0 peringkat

Masalah terkait

littletwolee picture littletwolee  ·  3Komentar

fieryorc picture fieryorc  ·  3Komentar

hypertornado picture hypertornado  ·  3Komentar

izouxv picture izouxv  ·  3Komentar

bramp picture bramp  ·  3Komentar