Différences
Ci-dessous, les différences entre deux révisions de la page.
| Les deux révisions précédentes Révision précédente Prochaine révision | Révision précédente | ||
| slam4:php:phalcon:models [2015/01/16 19:43] – [4.2- Ajout] jcheron | slam4:php:phalcon:models [2019/08/31 14:21] (Version actuelle) – modification externe 127.0.0.1 | ||
|---|---|---|---|
| Ligne 1: | Ligne 1: | ||
| ====== Modèles ====== | ====== Modèles ====== | ||
| Un modèle est une classe métier, représentant une partie des données d'une application. Dans la plupart des cas, un modèle est associé à une table de la base de données.\\ | Un modèle est une classe métier, représentant une partie des données d'une application. Dans la plupart des cas, un modèle est associé à une table de la base de données.\\ | ||
| - | [[http://docs.phalconphp.com/ | + | [[https://api.phalconphp.com/ |
| + | |||
| + | Phalcon implémente **ActiveRecord** pour sa partie ORM, il utilise donc l' | ||
| ===== -- Création de models ===== | ===== -- Création de models ===== | ||
| Ligne 487: | Ligne 489: | ||
| ==== -- Ajout/mise à jour ==== | ==== -- Ajout/mise à jour ==== | ||
| + | La méthode Phalcon\Mvc\Model:: | ||
| + | |||
| + | <sxh php> | ||
| + | public function addUserAction(){ | ||
| + | $user | ||
| + | $user-> | ||
| + | $user-> | ||
| + | $user-> | ||
| + | $user-> | ||
| + | $user-> | ||
| + | if ($user-> | ||
| + | echo " | ||
| + | foreach ($user-> | ||
| + | echo $message, " | ||
| + | } | ||
| + | } else { | ||
| + | echo " | ||
| + | } | ||
| + | } | ||
| + | </ | ||
| + | |||
| + | Mise à jour par passage d'un tableau associatif à la méthode **save()** : | ||
| + | <sxh php> | ||
| + | |||
| + | $droit= new Droit(); | ||
| + | $droit -> | ||
| + | " | ||
| + | " | ||
| + | )); | ||
| + | </ | ||
| + | |||
| + | Mise à jour à partir du post d'un formulaire : | ||
| + | <sxh php> | ||
| + | |||
| + | $droit= new Droit(); | ||
| + | $droit -> | ||
| + | </ | ||
| + | |||
| + | < | ||
| + | |||
| + | Il est possible de préciser en second paramètre les colonnes (libelle et admin) à affecter : | ||
| + | |||
| + | <sxh php> | ||
| + | $droit= new Droit(); | ||
| + | $droit-> | ||
| + | </ | ||
| + | |||
| + | Ou de faire clairement la distinction entre l' | ||
| + | |||
| + | <sxh php> | ||
| + | $droit | ||
| + | $droit-> | ||
| + | $droit-> | ||
| + | |||
| + | // | ||
| + | if ($droit-> | ||
| + | echo " | ||
| + | foreach ($droit-> | ||
| + | echo $message, " | ||
| + | } | ||
| + | } else { | ||
| + | echo "Un nouveau droit a été créé !"; | ||
| + | } | ||
| + | </ | ||
| + | |||
| + | Mise à jour d'un objet et de l' | ||
| + | <sxh php> | ||
| + | public function addCategorieUserAction(){ | ||
| + | $categorie=new Categorie(); | ||
| + | $categorie-> | ||
| + | |||
| + | $user=new Utilisateur(); | ||
| + | $user-> | ||
| + | $user-> | ||
| + | $user-> | ||
| + | $user-> | ||
| + | |||
| + | $user-> | ||
| + | if($user-> | ||
| + | echo " | ||
| + | foreach ($user-> | ||
| + | echo $message, " | ||
| + | } | ||
| + | }else{ | ||
| + | echo " | ||
| + | } | ||
| + | } | ||
| + | </ | ||
| + | |||
| + | |||
| + | ==== -- Suppression d' | ||
| + | |||
| + | La méthode **Phalcon\Mvc\Model:: | ||
| + | <sxh php; | ||
| + | <?php | ||
| + | |||
| + | $user = Utilisateur:: | ||
| + | if ($user != false) { | ||
| + | if ($user-> | ||
| + | echo " | ||
| + | foreach ($user-> | ||
| + | echo $message, " | ||
| + | } | ||
| + | } else { | ||
| + | echo " | ||
| + | } | ||
| + | } | ||
| + | |||
| + | </ | ||
| + | |||
| + | Il est également possible de supprimer plusieurs enregistrement en parcourant un résultat avec un foreach : | ||
| + | |||
| + | <sxh php; | ||
| + | <?php | ||
| + | |||
| + | foreach (Utilisateur:: | ||
| + | if ($user-> | ||
| + | echo " | ||
| + | foreach ($user-> | ||
| + | echo $message, " | ||
| + | } | ||
| + | } else { | ||
| + | echo " | ||
| + | } | ||
| + | } | ||
| + | </ | ||
| + | |||
| + | ===== -- Suppléments ===== | ||
| + | |||
| + | ==== -- Events ==== | ||
| + | Phalcon permet de gérer/ | ||
| + | ==== -- Behaviors ==== | ||
| + | |||
| + | Phalcon met a disposition un ensemble d' | ||
| + | * timeStempable : pour mémoriser l' | ||
| + | * softDelete : pour marquer des enregistrements comme supprimés | ||