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:codeigniter:doctrine [2013/01/11 02:25] – [Génération des metadonnées de mapping] jcheron | slam4:php:codeigniter:doctrine [2019/08/31 14:21] (Version actuelle) – modification externe 127.0.0.1 | ||
|---|---|---|---|
| Ligne 109: | Ligne 109: | ||
| Logiquement, | Logiquement, | ||
| - | Vérifier que la page d' | + | Vérifier que votre page d' |
| ===== Création des classes métier ===== | ===== Création des classes métier ===== | ||
| Ligne 261: | Ligne 261: | ||
| </ | </ | ||
| - | Tester en allant à l' | + | Tester en allant à l' |
| {{: | {{: | ||
| Ligne 625: | Ligne 625: | ||
| </ | </ | ||
| <sxh bash; | <sxh bash; | ||
| - | php doctrine-cli.php orm: | + | php doctrine-cli.php orm: |
| </ | </ | ||
| < | < | ||
| Ligne 631: | Ligne 631: | ||
| ==== Génération des classes ==== | ==== Génération des classes ==== | ||
| Nous allons maintenant générer les classes à partir des données de mapping : | Nous allons maintenant générer les classes à partir des données de mapping : | ||
| + | Avant la génération, | ||
| * en mode console, exécuter l' | * en mode console, exécuter l' | ||
| <sxh bash; | <sxh bash; | ||
| - | php doctrine-cli.php orm: | + | php doctrine-cli.php orm: |
| </ | </ | ||
| L' | L' | ||
| Ligne 869: | Ligne 870: | ||
| } | } | ||
| } | } | ||
| + | </ | ||
| + | |||
| + | * Après génération, | ||
| + | |||
| + | <sxh php; | ||
| + | $driverImpl = $config-> | ||
| + | $config-> | ||
| + | </ | ||
| + | |||
| + | ===== Sérialisation, | ||
| + | |||
| + | Pour permettre la sérialisation d' | ||
| + | |||
| + | ==== Au niveau des models ==== | ||
| + | |||
| + | Sur-définir éventuellement la méthode magique **_sleep** des classes, pour définir les membres à sérialiser : | ||
| + | |||
| + | <sxh php;Model utilisateur> | ||
| + | public function __sleep(){ | ||
| + | return array(' | ||
| + | } | ||
| + | </ | ||
| + | |||
| + | S'il faut également prévoir la sérialisation des objets dépendants, | ||
| + | |||
| + | Exemple : sérialisation du groupe de l' | ||
| + | |||
| + | <sxh php;Model utilisateur> | ||
| + | /** | ||
| + | * @var \Groupe | ||
| + | * | ||
| + | * @ManyToOne(targetEntity=" | ||
| + | * @JoinColumns({ | ||
| + | | ||
| + | * }) | ||
| + | */ | ||
| + | private $groupe; | ||
| + | </ | ||
| + | |||
| + | ==== Sauvegarde en session ==== | ||
| + | |||
| + | Utilisation de **detach** : | ||
| + | <sxh php; | ||
| + | public function save(){ | ||
| + | $user=DAO\getOne(" | ||
| + | $this-> | ||
| + | $this-> | ||
| + | echo $user-> | ||
| + | } | ||
| + | </ | ||
| + | |||
| + | |||
| + | ==== restauration depuis la session ==== | ||
| + | |||
| + | Utilisation de **merge** : | ||
| + | <sxh php; | ||
| + | public function load(){ | ||
| + | var_dump($this-> | ||
| + | $user=$this-> | ||
| + | $user=$this-> | ||
| + | var_dump($user); | ||
| + | } | ||
| </ | </ | ||