Si cela te convient, câest parfait. Bien jouĂ© 
Voici la mise en oeuvre technique dans lâexemple prĂ©sentĂ©. Tu pourras ainsi lâadapter Ă ta version.
Du cÎté des tables, il y en a 4
Users
(ou Utilisateurs
)
Rien de particulier Ă citer ici, il nây a pas de modification Ă apporter.
Jeux
3 nouvelles colonnes font leur apparition:
-
Relation avec Votes (Relation). Lâobjectif est de faire le lien avec la table Votes
, câest-Ă -dire retrouver toutes les lignes de cette table qui corresponde au jeu en question. Important de cocher Match multiple Ă©tant donnĂ© quâil peut y avoir plusieurs votes pour un mĂȘme jeu. Note que la valeur affichĂ©e ici nâa guĂšre dâimportance, câest la premiĂšre colonne de la table Votes
et la façon quâĂ Glide de te dire âjâai trouvĂ© ces lignes-lĂ â 
-
Compteur de votes (Rollup). Câest grĂące Ă cette colonne que lâon va âcompterâ le nombre de lignes prĂ©sentes dans la relation. Dans notre cas, cela revient Ă calculer le nombre de votes pour le jeu.
-
Liste des numĂ©ros de tickets (Joined List). Toujours en utilisant la relation que lâon a créée prĂ©cĂ©demment, on peut aussi faire dâautres choses pratiques comme Ă©tablir la liste des numĂ©ros de tickets qui ont votĂ© pour le jeu.
Votes
Comme on lâĂ©voquait, il y a dans cette table toutes les informations que lâon veut stocker pour le vote, Ă savoir le NumĂ©ro de ticket (Number), lâidentifiant du jeu (Jeu (ID), Text). Jâai ajoutĂ© une colonne Date et heure du vote (Date & Time) pour enregistrer Ă©galement Ă quel moment le vote a Ă©tĂ© effectuĂ©.
Par rapport Ă ta question sur le nom et le moyen de joindre la personne, je pense quâil est pertinent dans ton cas dâajouter deux autres colonnes : Nom (Text) et Moyen de contact (Text Ă©galement). Ces informations seront ainsi stockĂ©es au moment du vote.
Helper votes
(le nom nâa pas dâimportance, simplement le terme Helper est souvent employĂ© dans Glide pour dĂ©signer une table temporaire, qui sert Ă rĂ©aliser une Ă©tape de transition ou Ă recrĂ©er une structure adaptĂ©e Ă certains cas dâusage)

La table ressemble Ă Votes
puisquâelle sert Ă prĂ©stocker les informations avant que celles-ci ne soient âdĂ©finitivementâ ajoutĂ©es dans Votes
.
On retrouve donc une colonne Numéro de ticket
(Number) et Jeu choisi (ID
(Text). MĂȘme remarque : si tu souhaites rĂ©cupĂ©rer le nom et le moyen de contact, il conviendra dâajouter Ă©galement ces deux colonnes dans cette table.
Il y a un point important ici : toutes les colonnes qui servent Ă stocker temporairement les donnĂ©es doivent ĂȘtre créées avec lâoption Column is user-specific.
Dans le cas contraire, si deux utilisateurs saisissent des donnĂ©es en mĂȘme temps (ce qui pourrait arriver, Ă©tant donnĂ© que le formulaire prend quelques instants Ă remplir), ils Ă©criraient sur la mĂȘme ligne. Avec cette option, chaque utilisateur dispose de sa propre ligne de donnĂ©es.
Puis, nous crĂ©ons Ă©galement une colonne de Relation, ici Relation avec Votes. Exactement la mĂȘme logique que pour la relation dans la table Jeux
.
Pourquoi faire cela ? Eh bien sâil y a une valeur dans cette cellule, cela signifie⊠que lâon a trouvĂ© une ligne avec le mĂȘme numĂ©ro de ticket dans la table des Votes
. En français, cela revient à dire que ce numéro de ticket a déjà été utilisé pour un vote enregistré.Nous allons donc nous servir de cette technique pour afficher ou non le bouton pour voter 
MĂȘme si ce nâest pas indispensable, tu peux ajouter une colonne If â Then â Else (NumĂ©ro de ticket dĂ©jĂ utilisĂ© ?) pour afficher un message plus intelligible :
Maintenant, du cÎté du Layout.
La configuration actuelle repose sur un composant Button. Lâaction associĂ©e Ă ce bouton est Show new screen. Ainsi, lorsque lâutilisateur clique dessus, cela lui affiche un nouvel Ă©cran, que lâon va personnaliser selon notre besoin.
Hint
Pour afficher un message Ă lâutilisateur lui prĂ©cisant quâil y a dĂ©jĂ un vote pour ce numĂ©ro de ticket.
Dans la mesure oĂč ce message ne doit apparaĂźtre que si câest effectivement le cas (un vote dĂ©jĂ effectuĂ© avec ce numĂ©ro de ticket), on applique une condition de visibilitĂ© comme ceci :
Techniquement, on pourrait aussi choisir la condition Relation avec Votes is empty. Mais je trouve cela moins User friendly (dâoĂč lâindication sur le fait que cette colonne nâest pas indispensableâŠ).
Choice
Câest un composant qui permet de crĂ©er une liste dĂ©roulante ou une liste de valeurs basĂ©e sur une table. Ici, la table Jeux
bien sûr. Voici sa configuration :
Number Entry
Idem pour pour le composant Choice juste au dessus. Ici, on veut obtenir un nombre, le numéro du ticket. Sa configuration :
Button
Lâaction est Add row. On souhaite ajouter Ă la table Votes
les informations que lâutilisateur vient de nous fournir. On associe donc chaque valeur de la table Helper votes
Ă son pendant dans Votes
comme ceci :
Et pour Ă©viter que lâon ne puisse valider si le numĂ©ro est dĂ©jĂ utilisĂ©, on ajouter une condition de visibilitĂ© sur lâaction. Câest la mĂȘme que tout Ă lâheure, Ă savoir :
Button block
Simplement une action Go back avec pour titre Revenir à la page des jeux. Ce bouton vient renforcer le fonctionnement de Glide, le bouton retour est placé à cÎté du titre et il arrive que certains utilisateurs aient du mal à le voir. à ce stade, on peut se permettre de faire un peu de zÚle non
?
Pour stocker un Nom et un Moyen de contact, tu pourras aisément ajouter deux composants Text Entry qui seront à associer aux colonnes nouvellement créées dans Helper votes

Et bien sĂ»r, il restera Ă modifier lâaction pour quâau moment du clic, ces valeurs soient aussi sauvegardĂ©es dans Votes
.
Tiens nous au courant, pour savoir sâil y a des points qui restent en suspens.
En espĂ©rant que ça tâaidera 