Modèle - Geoffrey013/oc-p8-Take-existing-project-over GitHub Wiki
Le Modèle
Le fichier modele.js joue le rôle du modèle dans notre application, Il récupère les informations demandées par le Contrôleur.
Notre stockage, store.js, va lui jouer son rôle de “base de données” en offrant des méthodes de recherche, sauvegarde, suppression, attribution d’id unique.
Ainsi notre Modèle va appliquer les demandes du Contrôleur sur le stockage, comme créer une nouvelle tâche (Create), lire les tâches demandées (Read), mettre à jour la tâche demandée (Update) ou encore la supprimer (Delete). Il pourra aussi retourner le nombre de tâches présentes dans le stockage (getCount).
Modele.js
méthode | arguments | description |
---|---|---|
create | title(string)Callback(function) | créer un todo avec un titre (ex: "Appeler mamie pour son anniversaire") |
read | Query(string, number, object)Callback(function) | retourne un todo grâce à son id . retourne tous les todos existants si pas d’arguments |
update | id(number) data(object) Callback(function) | met à jour un todos grâce à son id, et les données à mettre à jour |
remove | id(number) Callback(function) | supprime un todo grâce à son id |
removeAll | Callback(function) | supprime tous les todos du stockage |
getCount | Callback(function) | retourne un objet avec le nombre de todos actifs, complétés, totaux, actuellement stockés |
Store.js
méthode | arguments | description |
---|---|---|
find | Query (object) Callback(function) | Si query = id retourne le todo correspondant. Si query = “completed” ou “active” retourne les todos correspondants. ex: {id:47} ou {completed: false} |
findAll | Callback(function) | retourne la liste des todos actuellement stockés |
save | updateData(object) Callback(function) id(number) | met à jour un todo avec le contenu updateData. Si aucun id n'est précisé un nouveau todo sera créé avec ce data |
remove | id(number) Callback(function) | supprime le todo dont l’identifiant correspond à l’id donné en paramètre |
drop | Callback(function) | supprime le local storage pour en recréer un nouveau |