为了账号安全,请及时绑定邮箱和手机立即绑定

Gorm 自动迁移创建没有用户定义属性的表 (postgresql)

Gorm 自动迁移创建没有用户定义属性的表 (postgresql)

Go
慕尼黑的夜晚无繁华 2022-09-05 10:47:09
package mainimport (    "fmt"    _ "github.com/jinzhu/gorm/dialects/postgres"    "gorm.io/driver/postgres"    "gorm.io/gorm")type Books struct {    gorm.Model    ID              uint    title           string    author          string    description     string    display_picture byte}func main() {        dsn := //successful create connection string        db, err := gorm.Open(postgres.Open(dsn), &gorm.Config{})    if err != nil {        // fmt.Println(err)        panic(err)    }    b := Books{}    db.AutoMigrate(&b)    data := Books{        title:       "Invisible Cities",        author:      "Italio Calvino",        description: "This book shows you the power of prose. It's a beautiful read which will make you feel like you're floating on a cloud.",    }    db.Create(&data)    fmt.Println(data)}连接字符串是正确的,因为 db.AutoMitrate(&b) 与数据库连接并实现 ID 和 gorm。模型属性(createdAt等),但是它不会添加我的属性标题,作者和描述。我花了一整天的时间在谷歌上搜索,但我在其他地方找不到这个错误。任何人都可以帮忙吗?此外,在运行脚本之前,我正在删除postgres中的Books表。
查看完整描述

1 回答

?
动漫人物

TA贡献1815条经验 获得超10个赞

将代码重写为这个,并始终记住在Gorm中我们需要将模型字段大写

package main


import (

    "fmt"


    _ "github.com/jinzhu/gorm/dialects/postgres"

    "gorm.io/driver/postgres"

    "gorm.io/gorm"

)


type Books struct {

    gorm.Model

    ID              uint

    Title           string

    Author          string

    Description     string

    Display_Picture byte

}



func main() {

    

    dsn := //successful create connection string

    

    db, err := gorm.Open(postgres.Open(dsn), &gorm.Config{})


    if err != nil {

        // fmt.Println(err)

        panic(err)

    }

    b := Books{}

    db.AutoMigrate(&b)

    data := Books{

        title:       "Invisible Cities",

        author:      "Italio Calvino",

        description: "This book shows you the power of prose. It's a beautiful read which will make you feel like you're floating on a cloud.",

    }

    db.Create(&data)

    fmt.Println(data)

}


查看完整回答
反对 回复 2022-09-05
  • 1 回答
  • 0 关注
  • 75 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信