生成された構造体の設定
生成された構造体の設定
命名スキーム
テーブルから生成される構造体は、テーブル名が複数形の場合、テーブル名の単数形を使用しようとします。
CREATE TABLE authors (
id SERIAL PRIMARY KEY,
name text NOT NULL
);
package db
// 構造体名はテーブル名の単数形を使用
type Author struct {
ID int
Name string
}
JSONタグ
CREATE TABLE authors (
id SERIAL PRIMARY KEY,
created_at timestamp NOT NULL
);
sqlcは、設定リファレンスに示されているように設定ファイルにemit_json_tags
キーを追加することで、JSONタグ付きの構造体を生成できます。フィールドのJSON名はデータベースの列名と一致します。
package db
import (
"time"
)
type Author struct {
ID int `json:"id"`
CreatedAt time.Time `json:"created_at"`
}
より細かい制御
構造体フィールドの型とタグの細かい制御については、「型のオーバーライド」ガイドを参照してください。
原文:https://docs.sqlc.dev/en/latest/howto/structs.html