Comment interroger des utilisateurs Parse avec Flutter
12 min
interroger les utilisateurs dans parse sur flutter introduction certaines applications doivent gérer directement les utilisateurs ou être en mesure de voir une liste d'eux parse dispose d'outils de requête qui peuvent être utilisés pour lister les utilisateurs de votre application dans ce guide, vous apprendrez à utiliser parsequery pour effectuer des requêtes d'utilisateurs dans votre application flutter en utilisant le plugin flutter pour parse server objectif créer une fonctionnalité d'interrogation des utilisateurs en utilisant parse pour une application flutter conditions préalables pour compléter ce tutoriel, vous aurez besoin de flutter version 2 2 x ou ultérieure https //flutter dev/docs/get started/install android studio https //developer android com/studio ou vs code installé https //code visualstudio com/ (avec plugins https //docs flutter dev/get started/editor dart et flutter) une application créée https //www back4app com/docs/get started/new parse app sur back4app remarque suivez le tutoriel de nouvelle application parse https //www back4app com/docs/get started/new parse app pour apprendre à créer une application parse sur back4app une application flutter connectée à back4app remarque suivez le installer le sdk parse sur le projet flutter https //www back4app com/docs/flutter/parse sdk/parse flutter sdk pour créer un projet flutter connecté à back4app un appareil (ou un appareil virtuel) exécutant android ou ios comprendre l'application query users pour mieux comprendre le processus de requête des utilisateurs, nous allons créer une application pour interroger nous n'expliquerons pas le code de l'application flutter car l'objectif principal de ce guide est d'utiliser flutter avec parse en suivant les étapes suivantes, vous allez créer une application todo qui stockera les tâches dans la base de données back4app commençons! en suivant les étapes suivantes, vous serez en mesure de créer une application sign qui créera un compte utilisateur dans la base de données back4app 1 créer un modèle d'application de requête d'utilisateurs ouvrez votre projet flutter du guide précédent flutter plugin for parse server allez dans le \<font color="#2166ae">main dart\</font> fichier, nettoyez tout le code et remplacez le par 1 import 'dart\ async'; 2 3 import 'package\ flutter/material dart'; 4 import 'package\ parse server sdk flutter/parse server sdk dart'; 5 6 void main() async { 7 widgetsflutterbinding ensureinitialized(); 8 9 final keyapplicationid = 'your app id here'; 10 final keyclientkey = 'your client key here'; 11 final keyparseserverurl = 'https //parseapi back4app com'; 12 13 await parse() initialize(keyapplicationid, keyparseserverurl, 14 clientkey keyclientkey, debug true); 15 16 runapp(materialapp( 17 home home(), 18 )); 19 } 20 21 class home extends statefulwidget { 22 @override 23 homestate createstate() => homestate(); 24 } 25 26 class homestate extends state\<home> { 27 final scaffoldkey = globalkey\<scaffoldstate>(); 28 29 @override 30 widget build(buildcontext context) { 31 return scaffold( 32 appbar appbar( 33 title text("parse query users"), 34 backgroundcolor colors blueaccent, 35 centertitle true, 36 ), 37 key scaffoldkey, 38 body futurebuilder\<list\<parseobject>>( 39 future douserquery(), 40 builder (context, snapshot) { 41 switch (snapshot connectionstate) { 42 case connectionstate none 43 case connectionstate waiting 44 return center( 45 child container( 46 width 100, 47 height 100, 48 child circularprogressindicator()), 49 ); 50 default 51 if (snapshot haserror) { 52 return center( 53 child text("error ${snapshot error tostring()}"), 54 ); 55 } else { 56 if (snapshot data! isempty) { 57 return center( 58 child text('none user found'), 59 ); 60 } 61 62 return listview\ builder( 63 padding edgeinsets only(top 10 0), 64 itemcount snapshot data! length, 65 itembuilder (context, index) { 66 final user = snapshot data!\[index] as parseuser; 67 final userverified = user emailverified ?? false; 68 return listtile( 69 title text( 70 'username ${user username} verified ${userverified tostring()}'), 71 subtitle text(user createdat tostring()), 72 ); 73 }); 74 } 75 } 76 })); 77 } 78 79 future\<list\<parseobject>> douserquery() async { 80 return \[]; 81 } 82 } 83 lorsque \<font color="#2166ae">debug\</font> le paramètre dans la fonction \<font color="#2166ae">parse() initialize\</font> est \<font color="#2166ae">true\</font> , cela permet d'afficher les appels api parse dans la console cette configuration peut aider à déboguer le code il est conseillé de désactiver le débogage dans la version de production 2 connecter le modèle au projet back4app trouvez votre identifiant d'application et vos identifiants de clé client en naviguant vers le tableau de bord de votre application à site web de back4app https //www back4app com/ mettez à jour votre code dans \<font color="#2166ae">main dart\</font> avec les valeurs de l'applicationid et de la clientkey de votre projet dans back4app keyapplicationid = id de l'application keyclientkey = clé du client exécutez le projet, et l'application se chargera comme indiqué dans l'image 3 code pour interroger les utilisateurs toute opération de requête parse utilise le \<font color="#2166ae">parsequery\</font> type d'objet, qui vous aidera à récupérer des données spécifiques de votre base de données tout au long de votre application un \<font color="#2166ae">parsequery\</font> ne se résoudra qu'après avoir appelé une méthode de récupération, vous pouvez donc configurer une requête et enchaîner ses plusieurs modificateurs avant de soumettre la méthode de récupération pour créer un nouveau \<font color="#2166ae">parsequery\</font> , vous devez passer en paramètre le \<font color="#2166ae">parseobject\</font> sous classe souhaitée, qui est celle qui contiendra les résultats de votre requête vous pouvez voir un exemple de requête utilisateur ci dessous en utilisant le code fourni, trouvez la \<font color="#2166ae">douserquery\</font> fonction dans le fichier \<font color="#2166ae">main dart\</font> remplacez le code à l'intérieur de \<font color="#2166ae">douserquery\</font> par 1 querybuilder\<parseuser> queryusers = 2 querybuilder\<parseuser>(parseuser forquery()); 3 final parseresponse apiresponse = await queryusers query(); 4 5 if (apiresponse success && apiresponse results != null) { 6 return apiresponse results as list\<parseobject>; 7 } else { 8 return \[]; 9 } pour construire cette fonction, suivez ces étapes créez une instance de \<font color="#2166ae">parsequery\</font> classe et passez comme paramètre à la \<font color="#2166ae">parseuser forquery\</font> appelez la \<font color="#2166ae">query\</font> fonction qui exécutera la requête contre la base de données si les opérations réussissent, cela renverra une liste d \<font color="#2166ae">parseuser\</font> objets si l'opération ne trouve aucun objet, la propriété de succès sera fausse, et les résultats seront nuls le code complet devrait ressembler à ceci 1 future\<list\<parseobject>> douserquery() async { 2 querybuilder\<parseuser> queryusers = 3 querybuilder\<parseuser>(parseuser forquery()); 4 final parseresponse apiresponse = await queryusers query(); 5 6 if (apiresponse success && apiresponse results != null) { 7 return apiresponse results as list\<parseobject>; 8 } else { 9 return \[]; 10 } 11 } vous pouvez également essayer de récupérer un seul utilisateur en utilisant la structure suivante user? get("username"); pour le tester, cliquez sur le \<font color="#2166ae">exécuter\</font> bouton dans android studio/vscode après avoir effectué cette requête, votre liste d'utilisateurs sur votre application devrait afficher quelque chose comme ceci c'est fait ! à la fin de ce guide, vous avez appris comment effectuer des requêtes sur les utilisateurs parse sur flutter