Maison  >  Article  >  développement back-end  >  Comment faire correspondre les champs de structure GORM avec les noms de colonnes de requête ?

Comment faire correspondre les champs de structure GORM avec les noms de colonnes de requête ?

Mary-Kate Olsen
Mary-Kate Olsenoriginal
2024-10-26 05:39:02599parcourir

How to Match GORM Struct Fields with Query Column Names?

Nom des champs de structure dans l'analyse des requêtes GORM

Lorsque vous essayez d'analyser les résultats d'une requête dans une structure GORM personnalisée, il est crucial de noter la convention que GORM utilise pour la dénomination des champs. Par défaut, GORM s'attend à ce que les champs de structure correspondent aux noms de colonnes dans le résultat de la requête.

Pour résoudre le problème de valeur par défaut que vous rencontrez, essayez les approches suivantes :

Option 1 : Champs publics et dénomination appropriée

  • Assurez-vous que vos champs de structure sont publics et utilisent les mêmes noms que les noms de colonnes dans le résultat de la requête. Par exemple :
<code class="go">type Res struct {
    ID     int
    Number int
    UserID int
}</code>

Option 2 : Mappages de colonnes personnalisés

Vous pouvez également spécifier des mappages de colonnes explicites à l'aide de la balise gorm:"column" sur chaque champ. Cela vous permet de définir un nom différent pour le champ tout en conservant le nom de colonne d'origine dans le résultat de la requête. Par exemple :

<code class="go">type res struct {
    id int      `gorm:"column:id"`
    number int  `gorm:"column:number"`
    user_id int `gorm:"column:user_id"`
}</code>

En implémentant l'une de ces options, vous devriez pouvoir analyser avec succès les résultats de la requête dans votre structure GORM personnalisée.

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn