GORM クエリ スキャンにおける構造体フィールドの名前付け
クエリの結果をカスタム GORM 構造体にスキャンしようとする場合、次の点に注意することが重要です。 GORM がフィールドの命名に採用している規則。デフォルトでは、GORM は構造体フィールドがクエリ結果の列名と一致することを期待します。
発生しているデフォルト値の問題を解決するには、次の方法を試してください:
オプション1: パブリック フィールドと適切な名前付け
<code class="go">type Res struct { ID int Number int UserID int }</code>
オプション 2: カスタム列マッピング
または、 gorm:"column" タグを使用して明示的な列マッピングを指定できます。それぞれのフィールド。これにより、クエリ結果に元の列名を保持したまま、フィールドに別の名前を定義できます。例:
<code class="go">type res struct { id int `gorm:"column:id"` number int `gorm:"column:number"` user_id int `gorm:"column:user_id"` }</code>
これらのオプションのいずれかを実装すると、クエリ結果をカスタム GORM 構造体に正常にスキャンできるようになります。
以上がGORM 構造体フィールドとクエリ列名を一致させるにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。