donglongqiao9595 2016-09-06 10:36
浏览 117
已采纳

Golang:Gorm对非Gorm迁移表使用Find(&model)

There is table customer_account (postgres) which one was migrate from YII2.

DDL:

CREATE TABLE public.test_table (
  id INTEGER PRIMARY KEY NOT NULL DEFAULT nextval('test_table_id_seq'::regclass),
  data JSONB
);

In go project i try to get value from this table.

type TableGo struct {
    Id int
    Data string `gorm:"type:jsonb"`
}

    table := TableGo{}
    db.Where("id = ?", 75).Find(&table)
    println(table.Data)

But there is (pq: relation "table_gos" does not exist)

How i can link structure which table without db.AutoMigrate(&TableGo{})?

  • 写回答

2条回答 默认 最新

  • dongluan1743 2016-09-06 16:28
    关注

    I think table name in your migration script is wrong. Because it is not in GORM convention. If you want to use that name,you can use following method in your model for custom table name.

    func (m *Model) TableName() string {
        return "custom_table_name"
    }
    
    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(1条)

报告相同问题?