ホームページ  >  記事  >  バックエンド開発  >  GORM 構造体フィールドとクエリ列名を一致させるにはどうすればよいですか?

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

Mary-Kate Olsen
Mary-Kate Olsenオリジナル
2024-10-26 05:39:02599ブラウズ

How to Match GORM Struct Fields with Query Column Names?

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 サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。