J'ajoute une chose : le plus simple pour déclarer les associations
d'un modèle est encore de construire vos tables selon votre MLD, puis
d'utiliser le script Bake automatique, qui vous proposera les
associations possibles pour chaque modèle en se connectant à votre
base, dont les noms des tables et des champs respecteront la
convention de nommage. Et ainsi vous n'aurez aucune ligne de code à
taper et vous serez sûr que les associations sont bien écrites dans
les modèles !
Quand on maîtrise bien cela, c'est vraiment génial.
On peut ensuite s'amuser à personnaliser le script de génération de
code pour qu'il inclue d'autres choses dans le fichier (par exemple
des PHPDocs, des méthodes à vous que vous souhaitez avoir dans tous
les modèles, etc.). Pour ma part, j'ai par exemple remplacé tous les
"var" par "public" pour être plus PHP5 compliant...

On 11 avr, 11:40, Giz <[EMAIL PROTECTED]> wrote:
> Merci !
>
> Je suis d'accord sur le modèle, mais il y a une chose qui est encore
> floue au niveau de la manipulation de ces tables par Cake.
>
> Mes tables auteurs, responsablemoes et responsablemoas doivent
> contenir les 2 champs : id et utilisateur_id
> mais la table applications doit elle contenir les champs auteur_id,
> reponsablemoa_id et responsablemoe_id ?
> Je ne vois pas comment se font les liens entre ces tables...
>
> En gros mes modèles donnent ce qui suit :
>
> application.php
>
> var $belongsTo = array(
>     'Auteur' => array('className' => 'Auteur',
>                             'foreignKey' => 'utilisateur_id'),
>     'Responsablemoa' => array('className' => 'Responsablemoa',
>                                             'foreignKey' =>
> 'utilisateur_id'),
>     'Responsablemoe' => array('className' => 'Responsablemoe',
>                                             'foreignKey' =>
> 'utilisateur_id')
>     'Utilisateur' => array('className' => 'Utilisateur',
>                                  'foreignKey' => 'utilisateur_id'));
>
> auteur.php, responsablemoa.php et responsablemoe.php
>
> var $hasMany = array(
>     'Application' => array('className' => 'Application',
>                            'conditions'=>'',
>                            'order'=>'',
>                            'foreignKey' => 'utilisateur_id'));
--~--~---------~--~----~------------~-------~--~----~

Groupe "Cakephp-fr".
Adresse : [email protected]
Pour résilier  : [EMAIL PROTECTED]
Pour les options : http://groups.google.com/group/cakephp-fr?hl=fr
-~----------~----~----~----~------~----~------~--~---

Répondre à