是否可以在GORM中使用动态JSON输入来运行db.AutoMigrate()?

时间:2018-09-26 11:20:29

标签: json go go-gorm

我具有以下功能,其中我尝试使用GORM向PostgreSQL数据库的表中添加缺少的列。数据来自HTTP请求,是JSON。

router.POST("/up", func(c *gin.Context) {

    raw, _ := c.GetRawData()
    parsed, _ := gabs.ParseJSON(raw)

    db, err := gorm.Open("postgres", "host=" + os.Getenv("HOST") + " port=5432 user=" + os.Getenv("USER") + " dbname=something password=" + os.Getenv("PASSWORD"))

    [...]

    db.AutoMigrate(parsed.Data())

    defer db.Close()

})

此操作失败,并出现一个奇怪的错误(德语)。

  

(pq:在Anführungszeichen帽子上的Bezeichner帽子»“”«)

翻译后的意思是

  

(pq:带引号的标识符在»“”«处的长度为零)

我使用以下方法创建HTTP请求的JSON。

{
  "FieldA": "blah",
  "FieldB": "nope",
  "Hostname": "yo.host.com",
  "Updated": "2018.06.13 21:00:33"
}

任何想法如何做到这一点?想法是每次将新字段发送到后端时,在数据库中添加一列。

0 个答案:

没有答案