「労働者が自分の仕事をうまくやりたいなら、まず自分の道具を研ぎ澄まさなければなりません。」 - 孔子、「論語。陸霊公」
表紙 > プログラミング > GORM 構造体フィールドとクエリ列名を一致させるにはどうすればよいですか?

GORM 構造体フィールドとクエリ列名を一致させるにはどうすればよいですか?

2024 年 11 月 8 日に公開
ブラウズ:897

How to Match GORM Struct Fields with Query Column Names?

GORM クエリ スキャンにおける構造体フィールドの名前付け

クエリの結果をカスタム GORM 構造体にスキャンしようとするときは、次の点に注意することが重要です。 GORM がフィールドの命名に採用している規則。デフォルトでは、GORM は構造体フィールドがクエリ結果の列名と一致することを期待します。

発生しているデフォルト値の問題を解決するには、次の方法を試してください:

オプション1: パブリック フィールドと適切な名前付け

  • 構造体フィールドがパブリックであり、クエリ結果の列名と同じ名前を使用していることを確認します。例:
type Res struct {
    ID     int
    Number int
    UserID int
}

オプション 2: カスタム列マッピング

または、各フィールドで gorm:"column" タグを使用して、明示的な列マッピングを指定できます。これにより、クエリ結果に元の列名を保持したまま、フィールドに別の名前を定義できます。例:

type res struct {
    id int      `gorm:"column:id"`
    number int  `gorm:"column:number"`
    user_id int `gorm:"column:user_id"`
}

これらのオプションのいずれかを実装すると、クエリ結果をカスタム GORM 構造体に正常にスキャンできるようになります。

最新のチュートリアル もっと>

免責事項: 提供されるすべてのリソースの一部はインターネットからのものです。お客様の著作権またはその他の権利および利益の侵害がある場合は、詳細な理由を説明し、著作権または権利および利益の証拠を提出して、電子メール [email protected] に送信してください。 できるだけ早く対応させていただきます。

Copyright© 2022 湘ICP备2022001581号-3