登录
首页 >  Golang >  Go问答

golang ORM 表名称

来源:stackoverflow

时间:2024-04-15 15:57:33 304浏览 收藏

亲爱的编程学习爱好者,如果你点开了这篇文章,说明你对《golang ORM 表名称》很感兴趣。本篇文章就来给大家详细解析一下,主要介绍一下,希望所有认真读完的童鞋们,都有实质性的提高。

问题内容

我有一些代码可以在 postgres db 中创建表

import (
    "github.com/jinzhu/gorm"
    _ "github.com/lib/pq"
)
type Table struct {
    Id   int    `gorm:"primary_key"`
    Name string `gorm:"type:varchar(100)"`
    Addr string `gorm:"type:varchar(100)"`
}
func main() {
    db, _ := gorm.Open("postgres", "user=postgres password=poilo777 dbname=mydb sslmode=disable")
    defer db.Close()
    db.CreateTable(&Table{}) 
    user := &Table{Name: "ololo", Addr: "pololo"}

我遇到了两个问题: 1)在数据库中创建一个表“tables”而不是“table” 2)如何在现有的另一个表中插入数据? (例如“用户”)


解决方案


1) 可以将table的表名设置为table

func (table) tablename() string {
    return "table"
}

另一种方法是将singulartable设置为true,那么table的默认表名将是table而不是tables。但它会对所有表产生相同的影响。

set db.SingularTable(true)

2) 在 orm 中,您应该定义表对象。这是一个名为 table 的结构。 gorm 将在数据库中创建一个名为 tables 的新表,除非您想覆盖表的名称,您可以按照步骤 1 操作。

今天关于《golang ORM 表名称》的内容介绍就到此结束,如果有什么疑问或者建议,可以在golang学习网公众号下多多回复交流;文中若有不正之处,也希望回复留言以告知!

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