Stockage de structures imbriquées dans la banque de données GAE avec Go
La banque de données Google App Engine offre une prise en charge limitée des structures imbriquées dans Go. Cet article explore une solution pour réaliser un stockage de structures imbriquées dans la banque de données.
Problème
Lors de l'envoi d'une publication à un utilisateur au format JSON, il est nécessaire d'inclure des informations sur l'utilisateur. avec le message. La méthode traditionnelle de stockage de deux champs (un pour l'ID utilisateur et un pour la structure utilisateur) semble redondante. La question se pose : existe-t-il une solution plus efficace ?
Solution
L'API de banque de données Appengine de Go fournit l'interface PropertyLoadSaver pour résoudre ce problème. Cette interface permet aux utilisateurs de définir une logique de sérialisation et de désérialisation personnalisée pour leurs structures.
En implémentant les méthodes Load et Save de cette interface, vous obtenez un contrôle total sur la façon dont vos données sont structurées et sérialisées. Cette flexibilité vous permet de stocker efficacement les structures imbriquées tout en permettant le filtrage et l'indexation sur des champs individuels.
Mise en œuvre
Implémentez l'interface PropertyLoadSaver pour chaque structure :
Sortie JSON
La sortie JSON résultante conservera la structure imbriquée souhaitée :
<code class="json">{ "POST": { "field1": "value1", "field2": "value2", "USER": { "user_field1": "value3", "user_Field2": "value4" } } }</code>
Cette approche fournit une solution sur mesure pour stocker les structures imbriquées dans la banque de données GAE, garantissant à la fois l'intégrité des données et une gestion efficace des données.
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!