[英]Golang: gorm use Find(&model) for non gorm migrate table
有一个表customer_account
( postgres
),该表是从YII2迁移过来的。
DDL:
CREATE TABLE public.test_table (
id INTEGER PRIMARY KEY NOT NULL DEFAULT nextval('test_table_id_seq'::regclass),
data JSONB
);
在go项目中,我尝试从此表中获取价值。
type TableGo struct {
Id int
Data string `gorm:"type:jsonb"`
}
table := TableGo{}
db.Where("id = ?", 75).Find(&table)
println(table.Data)
但是有(pq: relation "table_gos" does not exist)
我如何在没有db.AutoMigrate(&TableGo{})
情况下链接结构哪个表?
找到了解决方案:
func(TableGo) TableName() string {
return "account_status"
}
我认为您的迁移脚本中的表名是错误的。 因为它不在GORM约定中。 如果要使用该名称,则可以在模型中使用以下方法自定义表名称。
func (m *Model) TableName() string {
return "custom_table_name"
}
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.