Gorm: Π˜Π·ΠΌΠ΅Π½ΠΈΡ‚ΡŒ имя сгСнСрированных ΠΏΠΎ ΡƒΠΌΠΎΠ»Ρ‡Π°Π½ΠΈΡŽ столбцов

Π‘ΠΎΠ·Π΄Π°Π½Π½Ρ‹ΠΉ Π½Π° 18 мая 2017  Β·  3ΠšΠΎΠΌΠΌΠ΅Π½Ρ‚Π°Ρ€ΠΈΠΈ  Β·  Π˜ΡΡ‚ΠΎΡ‡Π½ΠΈΠΊ: go-gorm/gorm

ΠŸΡ€ΠΈΠ²Π΅Ρ‚, ΠΌΠΎΠΆΠ½ΠΎ ΠΏΠ΅Ρ€Π΅ΠΎΠΏΡ€Π΅Π΄Π΅Π»ΠΈΡ‚ΡŒ имя столбцов: ID, created_at, updated_at, deleted_at?

Насколько я знаю, я ΠΌΠΎΠ³Ρƒ ΡƒΠΊΠ°Π·Π°Ρ‚ΡŒ, Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, имя Ρ‚Π°Π±Π»ΠΈΡ†Ρ‹ с Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠ΅ΠΉ:

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

МоТно Π»ΠΈ, Π½ΠΎ с ΠΊΠΎΠ»ΠΎΠ½Π½Π°ΠΌΠΈ? это ΠΏΠΎΡ‚ΠΎΠΌΡƒ, Ρ‡Ρ‚ΠΎ модСль Π΄Π°Π½Π½Ρ‹Ρ… ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Π° ΡƒΠΆΠ΅ установила ΠΈΠΌΠ΅Π½Π° ΠΏΠΎΠ»Π΅ΠΉ, ΠΈ, Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, Ρƒ нас Π½Π΅Ρ‚ _updated_at_, Π½ΠΎ _ModificationTimestamp_, Ρ‚Π°ΠΊ ΠΊΠ°ΠΊ я ΠΌΠΎΠ³Ρƒ это ΡΠ΄Π΅Π»Π°Ρ‚ΡŒ?

Π‘Π°ΠΌΡ‹ΠΉ ΠΏΠΎΠ»Π΅Π·Π½Ρ‹ΠΉ ΠΊΠΎΠΌΠΌΠ΅Π½Ρ‚Π°Ρ€ΠΈΠΉ

ΠŸΡ€ΠΎΡΡ‚ΠΎ Π½Π΅ встраивайтС ΠΌΠΎΠ΄ ΠΏΠΎ ΡƒΠΌΠΎΠ»Ρ‡Π°Π½ΠΈΡŽ Π² свою структуру. Если Π²Ρ‹ посмотритС, ΠΊΠ°ΠΊ это опрСдСляСтся, Π²Ρ‹ ΡƒΠ²ΠΈΠ΄ΠΈΡ‚Π΅:

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

Π’Ρ‹ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ ΠΎΠΏΡ€Π΅Π΄Π΅Π»ΠΈΡ‚ΡŒ эти поля Π² своСй собствСнной ΠΌΠΎΠ΄Π΅Π»ΠΈ ΠΈΠ»ΠΈ ΡΠΎΠ·Π΄Π°Ρ‚ΡŒ ΡΠΎΠ±ΡΡ‚Π²Π΅Π½Π½ΡƒΡŽ Π±Π°Π·ΠΎΠ²ΡƒΡŽ модСль с Π΄Ρ€ΡƒΠ³ΠΈΠΌΠΈ ΠΈΠΌΠ΅Π½Π°ΠΌΠΈ ΠΈ Π²ΡΡ‚Ρ€ΠΎΠΈΡ‚ΡŒ Π΅Π΅.

ВсС 3 ΠšΠΎΠΌΠΌΠ΅Π½Ρ‚Π°Ρ€ΠΈΠΉ

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 ΠŸΡ€ΠΈΠ²Π΅Ρ‚, спасибо. Но я ΠΊΠ°ΠΊ Ρ€Π°Π· ΠΏΡ‹Ρ‚Π°ΡŽΡΡŒ Π·Π°ΡΡ‚Π°Π²ΠΈΡ‚ΡŒ gorm ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ Π΄Ρ€ΡƒΠ³ΠΎΠ΅ имя для автоматичСски созданных столбцов: created_at, updated_at, id. Π― ΠΏΡ€ΠΎΠ±ΠΎΠ²Π°Π» Ρ‚ΠΎ, Ρ‡Ρ‚ΠΎ Π²Ρ‹ сказали, Π½ΠΎ это Π΄Π°Π»ΠΎ ΠΎΡˆΠΈΠ±ΠΊΡƒ, ΠΏΠΎΡ‚ΠΎΠΌΡƒ Ρ‡Ρ‚ΠΎ, Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, столбСц created_at ΡƒΠΆΠ΅ ΡƒΠΊΠ°Π·Π°Π½:
column "created_at" specified more than once)

ΠŸΡ€ΠΎΡΡ‚ΠΎ Π½Π΅ встраивайтС ΠΌΠΎΠ΄ ΠΏΠΎ ΡƒΠΌΠΎΠ»Ρ‡Π°Π½ΠΈΡŽ Π² свою структуру. Если Π²Ρ‹ посмотритС, ΠΊΠ°ΠΊ это опрСдСляСтся, Π²Ρ‹ ΡƒΠ²ΠΈΠ΄ΠΈΡ‚Π΅:

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

Π’Ρ‹ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ ΠΎΠΏΡ€Π΅Π΄Π΅Π»ΠΈΡ‚ΡŒ эти поля Π² своСй собствСнной ΠΌΠΎΠ΄Π΅Π»ΠΈ ΠΈΠ»ΠΈ ΡΠΎΠ·Π΄Π°Ρ‚ΡŒ ΡΠΎΠ±ΡΡ‚Π²Π΅Π½Π½ΡƒΡŽ Π±Π°Π·ΠΎΠ²ΡƒΡŽ модСль с Π΄Ρ€ΡƒΠ³ΠΈΠΌΠΈ ΠΈΠΌΠ΅Π½Π°ΠΌΠΈ ΠΈ Π²ΡΡ‚Ρ€ΠΎΠΈΡ‚ΡŒ Π΅Π΅.

Π‘Ρ‹Π»Π° Π»ΠΈ эта страница ΠΏΠΎΠ»Π΅Π·Π½ΠΎΠΉ?
0 / 5 - 0 Ρ€Π΅ΠΉΡ‚ΠΈΠ½Π³ΠΈ