drsb77336 2019-09-16 02:17
浏览 414
已采纳

没有gorm.Model列的Gorm查询

How can I omit the columns that come from the gorm.Model. E.g. CreatedDate, modifiedDate.

Consider the following model:

type User struct{
    gorm.Model
    Firstname string
    Lastname string
}

Now I can select specific column with:

db.Select("Firstname").Find(&users)

However, while it excludes the Lastname column, it does not exclude the columns that come from the gorm.Model. So the result would look something like:

[{"ID":0,"CreatedAt":"0001-01-01T00:00:00Z","UpdatedAt":"0001-01-01T00:00:00Z","DeletedAt":null,"Firstname":"Foobar"}]

I want only the Firstname column.

  • 写回答

1条回答 默认 最新

  • dongmao9217 2019-09-16 07:32
    关注

    You can define your User type without including gorm.Model struct

    type User struct{
        Firstname string
        Lastname string
    }
    

    Alternatively, you can use two types, one with gorm.Model and the second without it. You can use the latter when retrieving values without gorm.Model properties.

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论

报告相同问题?