> Cela me semble pas mal, mais tu fais celà dans le Modèle ou
> dans le Contrôleur ?
>
Tel qu'il est écrit, c'est dans le controlleur... Dans le modele c'est
pareil il suffit d'enlever '->Item'.
> Par contre, je ne comprends pas pourquoi tu récupères les ids créés vu
> que je n'en ai pas besoin pour mon saveAll().
>
Tu enregistre les Tags, mais tu veux peut être les lier à ton Item ?
C'est pour ça qu'il faut les Ids.
> Par ailleurs, ton système fonctionne-t-il lors d'un update ?
> J'entends par là, est-ce qu'on ne risque pas d'avoir des doublons dans la
> table
> de liaison "items_tags" ?
Non cake commence par supprimer tout les items_tags pour l'item que tu updates.
Je suis resté dans un cadre générique, mais avant de vouloir sauver un
Tag, il faudrai vérifier qu'il n'existe pas déja nan ?
$ids=array();
foreach($this->data['Tag'] as $tag) {
if (isset($tag['Tag[['tag'])) {
$check=$this->Item->Tag->findByTag($tag['tag']);
if(isset($check['Tag']['id']))
$ids[]=$check['Tag']['id']
} else {
$this->Item->Tag->save($tag);
$ids[]=$this->Item->Tag->getLastInsertId();
}
}
unset($this->data['Tag']);
$this->data['Tag']=$ids;
$this->Item->saveAll($this->data));
Mehdi
--~--~---------~--~----~------------~-------~--~----~
Groupe "Cakephp-fr".
Adresse : [email protected]
Pour résilier : [EMAIL PROTECTED]
Pour les options : http://groups.google.com/group/cakephp-fr?hl=fr
-~----------~----~----~----~------~----~------~--~---