【问题标题】:Gorm selecting data 1 column to some struct attributeGorm 为某些结构属性选择数据 1 列
【发布时间】:2021-09-29 08:50:58
【问题描述】:

我想使用带有结构对象的 gorm 选择数据,如下所示:

type Song struct {
   Title string `json:"title" gorm:"column:title"`
   Artist string `json:"artis" gorm:"column:artist"`
   Producer string json:"producer" gorm:"column:artist"
}

使用数据库数据只有 2 列标题和艺术家。您可以看到我想将列艺术家的数据设置为多个结构属性(艺术家和制片人)。

我尝试使用普通选择。艺人属性填入数据,制作人为空。

有什么建议吗?

【问题讨论】:

    标签: go go-gorm


    【解决方案1】:

    参见文档gorm-hooks

    像这样:

    func (u *Song ) AfterFind(tx *gorm.DB) (err error) {
      u.Producer = u.Artist 
      return
    }
    

    并且Producer 字段不应该有gorm:"column:artist" 标签。它可能会导致一些其他问题。如果数据库没有这个字段,建议使用gorm:"-"

    或者

    type Song struct {
       Title string `json:"title" gorm:"column:title"`
       // Use Producer in code, but artist in database.
       Producer string `json:"producer" gorm:"column:artist"`
    }
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2014-09-21
      • 1970-01-01
      • 1970-01-01
      • 2012-11-25
      • 2023-04-07
      • 1970-01-01
      相关资源
      最近更新 更多