🤖
sqlboilerが生成するstructにdb tagを打つ
sqlboiler という Go の ORM は DB のスキーマ情報を読み取って、それを操作するコードを自動生成する。
基本的にこの自動生成されたコードを使えばいいのだが、たまに database/sql
や sqlx を使ってローレベルにクエリを組み立てたい時がある。
しかし、sqlboiler が自動生成するテーブルの struct には db
タグがついていないので、そのままでは似たような struct を別でつくることになってしまう。
type Pilot struct { ID int `boil:"id" json:"id" toml:"id" yaml:"id"` Name string `boil:"name" json:"name" toml:"name" yaml:"name"` R *pilotR `boil:"-" json:"-" toml:"-" yaml:"-"` L pilotR `boil:"-" json:"-" toml:"-" yaml:"-"` }
from: https://github.com/volatiletech/sqlboiler/blob/master/README.md#features--examples
生成される struct にも db
タグを打って使いやすくしたい。
指定方法
README を読んでみると分かるが db
タグを打つ方法は以下の2つ。
-
sqlboiler
コマンドの-t
で指定する - コンフィグ (
sqlboiler.toml
) でtag=["db"]
と指定する
これで痒い所にも手が届くようになった。
Discussion