iOS
...
Parse Swift SDK
Data Objects

Implémentation CRUD avec ParseSwift SDK pour iOS

17min

CRUD Parse objets dans iOS

Introduction

Le stockage de données sur Parse est construit autour de la Parse.Object classe. Chaque Parse.Object contient des paires clé-valeur de données compatibles JSON. Ces données sont sans schéma, ce qui signifie que vous n'avez pas besoin de spécifier à l'avance quelles clés existent sur chaque Parse.Object. Vous pouvez simplement définir les paires clé-valeur que vous souhaitez, et notre backend les stockera.

Vous pouvez également spécifier les types de données selon les besoins de votre application et persister des types tels que nombre, booléen, chaîne, DateTime, liste, GeoPointers, et Objet, les encodant en JSON avant de les enregistrer. Parse prend également en charge le stockage et la requête de données relationnelles en utilisant les types Pointers et Relations.

Dans ce guide, vous apprendrez à effectuer des opérations de données de base à travers une application exemple CRUD (Application de liste de tâches), qui vous montrera comment créer, lire, mettre à jour et supprimer des données de votre base de données serveur Parse en utilisant le ParseSwift SDK.

Ce tutoriel utilise une application de base créée dans Xcode 12 et iOS 14.

À tout moment, vous pouvez accéder au projet complet via nos dépôts GitHub.

Objectif

Pour apprendre à effectuer des opérations de base sur une base de données back4app en utilisant une application de liste de tâches comme exemple

Prérequis

Pour compléter ce guide rapide, vous avez besoin de :

Comprendre notre application de liste de tâches

Pour mieux comprendre le SDK ParseSwift vous allez effectuer des opérations CRUD sur une application de liste de tâches. La base de données de l'application aura une classe de tâche simple avec un titre et une description (tous deux chaînes). Vous pouvez mettre à jour le titre et/ou la description de chaque tâche.

Référence rapide des commandes que nous allons utiliser

Une fois qu'un objet conforme au ParseSwift protocole, il implémente automatiquement un ensemble de méthodes qui vous permettront de gérer l'objet et de mettre à jour les modifications sur votre base de données Back4App. Étant donné l'objet ToDoListItem

Swift


ces méthodes sont listées ci-dessous.

Create
Read
Update
Delete


1 - Créer un modèle d'application de liste de tâches

Document image


À tout moment, vous pouvez accéder au projet complet via nos dépôts GitHub.

Allez dans Xcode et trouvez le SceneDelegate.swift fichier. Afin d'ajouter une barre de navigation en haut de l'application, nous configurons un UINavigationController comme contrôleur de vue racine de la manière suivante.

Swift


La classe du contrôleur de vue racine (ToDoListController) pour le contrôleur de navigation est une sous-classe de UITableViewController, cela facilite la mise en page d'une liste d'éléments.

2 - Configurer l'objet CRUD

Les objets que vous souhaitez enregistrer dans votre base de données Back4App doivent respecter le ParseObject protocole. Dans notre application To-do List, cet objet est ToDoListItem. Par conséquent, vous devez d'abord créer cet objet :

Swift


Cet objet définit une classe dans votre base de données Back4App. Toute nouvelle instance de cet objet est ensuite stockée dans votre base de données sous la ToDoListItem classe.

3 - Configurer ToDoListController

Dans ToDoListController nous devrions implémenter toute la configuration nécessaire pour le navigationBar, et tableView propriétés.

Swift


Pour conclure cette étape, nous implémentons la cellule de vue de table personnalisée ToDoListItemCell

Swift


4 - Flux CRUD

Nous implémentons toute la logique CRUD dans la ToDoListController classe. Allez à ToDoListController.swift et ajoutez les méthodes suivantes à la ToDoListController classe

Swift


- Créer un objet

Maintenant, nous commençons à implémenter le createObject(title:description:) méthode. Créez une instance de ToDoListItem en utilisant le init(title:description:) initialiseur. Afin de sauvegarder ce nouvel élément dans votre base de données Back4App, le ParseSwift protocole fournit une save() méthode. Cette méthode peut être appelée de manière synchrone ou asynchrone, choisissez l'une d'elles selon votre cas d'utilisation. Une implémentation asynchrone devrait ressembler à ceci

Swift


Maintenant, nous pouvons compléter l'action pour le bouton d'ajout situé à droite de la barre de navigation. Allez àToDoListController et ajoutez ce qui suit

Swift


- Lire l'objet

Nous passons à la readObjects() méthode. Récupérer les ToDoListItem éléments de votre base de données Back4App se fait via un Query<ToDoListItem> objet. Cette requête est instanciée de la manière suivante

Swift


Dans ce tutoriel, nous utilisons une requête qui récupérera tous les éléments de type ToDoListItem de votre base de données Back4App. Si vous souhaitez récupérer un ensemble d'éléments spécifiques, vous pouvez fournir des QueryConstraint éléments à ToDoListItem.query(QueryConstraint...). Par exemple, pour récupérer tous les éléments où title == "Some title", la requête prend la forme

Swift


Une fois que vous avez la requête prête, nous procédons à la récupération des éléments en appelantquery.find(). Encore une fois, cela peut être fait de manière synchrone ou asynchrone. Dans notre application To-do List, nous l'implémentons de manière asynchrone.

Swift


Avec readObjects() terminé, nous pouvons maintenant récupérer toutes les tâches stockées dans votre base de données Back4App et les afficher juste après que l'application entre au premier plan. Retournez à ToDoListController et remplacez la méthode viewDidAppear().

Swift


- Mettre à jour l'objet

Étant donné le objectId d'un ToDoListItem objet, il est simple de réaliser une mise à jour. Nous instancions simplement un ToDoListItem en utilisant le init(objectId:) initialiseur. Ensuite, nous mettons à jour les propriétés dont nous avons besoin et appelons la save() méthode (de ToDoListItem) pour enregistrer les modifications.

Swift


- Supprimer l'objet

La suppression d'objets dans votre base de données Back4App est très similaire à la création d'objets. Nous commençons par créer une instance de ToDoListItem avec l'objectId de l'élément que nous voulons supprimer. Ensuite, nous appelons simplement (synchroniquement ou asynchroniquement) la delete() méthode de l'objet. Si la suppression a réussi, nous mettons à jour l'interface utilisateur, sinon nous signalons l'erreur.

Swift


Avec deleteObject(item:) et updateObject(objectId:newTitle:newDescription) terminé, nous procédons à ajouter les actions correspondantes pour appeler ces opérations. Retournez à ToDoListController et ajoutez

Swift


Comme nous l'avons souligné précédemment, le bouton accessoire dans chaque ToDoListItemCell déclenche une feuille d'édition via le tableView(_:accessoryButtonTappedForRowWith:) méthode déléguée.

C'est fait!

À ce stade, vous avez appris à effectuer les opérations CRUD de base avec Parse sur iOS.