没有 gorm.Model 列的 Gorm 查询

Gorm query without gorm.Model columns

如何省略来自 gorm.Model 的列。例如。创建日期、修改日期。

考虑以下模型:

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

现在我可以 select 特定列:

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

但是,虽然它排除了姓氏列,但它不排除来自 gorm.Model 的列。所以结果看起来像:

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

我只想要名字列。

您可以定义 User 类型而不包括 gorm.Model struct

type User struct{
    Firstname string
    Lastname string
}

或者,您可以使用两种类型,一种带 gorm.Model,另一种不带。在没有 gorm.Model 属性的情况下检索值时,您可以使用后者。