0

YII2 から移行した表customer_account( ) があります。postgres

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{})ですか?

4

2 に答える 2

0

解決策を見つけました:

func(TableGo) TableName() string {
    return "account_status"
}
于 2016-09-06T10:59:37.730 に答える
0

移行スクリプトのテーブル名が間違っていると思います。GORM規約にないからです。その名前を使用したい場合は、カスタム テーブル名のモデルで次のメソッドを使用できます。

func (m *Model) TableName() string {
    return "custom_table_name"
}
于 2016-09-06T16:28:13.980 に答える