登录
首页 >  Golang >  Go问答

如何使用 Gorm 将默认值添加到现有列

来源:stackoverflow

时间:2024-04-21 09:12:32 379浏览 收藏

怎么入门Golang编程?需要学习哪些知识点?这是新手们刚接触编程时常见的问题;下面golang学习网就来给大家整理分享一些知识点,希望能够给初学者一些帮助。本篇文章就来介绍《如何使用 Gorm 将默认值添加到现有列》,涉及到,有需要的可以收藏一下

问题内容

我正在使用 gorm 并有一个像这样的模型:

type mymodel struct {
    creationtime      time.time 
    updatetime        time.time
}

部署数据库后,我意识到创建时间和更新时间并没有增加创建和更新项目的时间!我尝试通过将模型更新为以下内容来解决此问题:

type mymodel struct {
    creationtime      time.time       `gorm:"default:current_timestamp"`
    updatetime        time.time       `gorm:"default:current_timestamp on update current_timestamp"`
}

但是,如下所示的自动迁移不会将这些默认值应用于已存在的表!

db.AutoMigrate(&MyModel{})

有什么方法可以使用内置的迁移函数向列添加默认值吗?我搜索了文档,似乎我只能更改现有列的类型!如果没有,有什么建议可以解释为什么通过迁移简单地将默认值添加到列中吗?


解决方案


您尝试过 sql 标签吗?

`sql:"DEFAULT:current_timestamp"`

到这里,我们也就讲完了《如何使用 Gorm 将默认值添加到现有列》的内容了。个人认为,基础知识的学习和巩固,是为了更好的将其运用到项目中,欢迎关注golang学习网公众号,带你了解更多关于的知识点!

声明:本文转载于:stackoverflow 如有侵犯,请联系study_golang@163.com删除
相关阅读
更多>
最新阅读
更多>
课程推荐
更多>