【问题标题】:How do I create a TEXT column with Go Gorm如何使用 Go Gorm 创建 TEXT 列
【发布时间】:2020-04-11 13:42:22
【问题描述】:

我正在尝试使用 Gorm ORM 创建一个 TEXT 列,但该列仍创建为 VARCHAR(225)。 下面是我要迁移到表的结构。

type TextDump struct {
  *gorm.Model
  Title string `gorm:"varchar(50)" json:"title" binding:"required"`
  Text string `gorm:"text" json:"text" binding:"required"`
  Count int `json:"count"`
  ChannelID int `json:"channel_id" binding:"required"`
}

text 列创建为VARCHAR,而不是TEXT

【问题讨论】:

    标签: go go-gorm


    【解决方案1】:

    在此处转发@Narro 的评论以获得更好的发现(我也必须检查 cmets)。

    您应该在列类型之前使用标签名称type

    type TextDump struct {
      *gorm.Model
      Text string `gorm:"type:text"`
      // ...
    }
    

    参考:Gorm Field Tags

    【讨论】:

      【解决方案2】:

      只需使用空白标签创建即可。

      type Post struct {
        gorm.Model
        Content string ``
      }
      

      附:我正在使用带有 Postgres 11.8 的 Gorm v1.20.12

      【讨论】:

        【解决方案3】:
        type TextDump struct {
          *gorm.Model
          Title string `gorm:"size:50" json:"title" binding:"required"`
          Text string `gorm:"text" json:"text" binding:"required"`
          Count int `json:"count"`
          ChannelID int `json:"channel_id" binding:"required"`
        }
        

        【讨论】:

        猜你喜欢
        • 2021-06-06
        • 2021-07-11
        • 1970-01-01
        • 1970-01-01
        • 2018-02-08
        • 1970-01-01
        • 2021-12-02
        • 2020-05-26
        • 1970-01-01
        相关资源
        最近更新 更多