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

无法通过内置方法添加列和创建用户

无法通过内置方法添加列和创建用户

Go
侃侃无极 2022-09-19 21:22:25
我正在尝试使用数据库。我被建议使用Gorm,但是,由于某些方法不起作用,因此很烦人。对于模型,我有:type UserModel struct {     first_name string     last_name string     }这是我的示例代码及其结果。下面的代码有效,但在我的数据库中,表名是user_models db.Migrator().CreateTable(&UserModel{})以下代码不起作用err := db.Migrator().AddColumn(&UserModel{}, "first_name")无法查找名称为:first_name的字段我尝试了这个,它的工作原理db.Exec("ALTER TABLE user_models ADD first_name varchar(64);")另一个不起作用user := UserModel{first_name: "Jinzhu", last_name: "name"}不是错误,而是插入first_name:空和last_name:空最后,有什么能帮我解决这些问题吗?
查看完整描述

1 回答

?
小怪兽爱吃肉

TA贡献1852条经验 获得超1个赞

您的两个字段“first_name”和“last_name”(两者都不遵循 Go 命名建议)是未导出的,因为它们以小写字母开头。这意味着Gorm不关注这些领域。

我建议使用以下方法,它将使用Gorm推荐的结构标签实现您想要的字段名称:

type UserModel struct {
    FirstName string `gorm:"column:first_name"`
    LastName string `gorm:"column:last_name"`}

有关详细信息,请参阅 https://gorm.io/docs/models.html#Conventions


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

添加回答

举报

0/150
提交
取消
微信客服

购课补贴
联系客服咨询优惠详情

帮助反馈 APP下载

慕课网APP
您的移动学习伙伴

公众号

扫描二维码
关注慕课网微信公众号