setter sur une Doctrine_collection: many to many
Bonjour,
j'ai un formulaire qui me permet de créer un nouvel article. Pour certains champs, je fais un set($value), mais après la soumission du formulaire, mes valeurs qui ont été rajoutées avec le set ne sont pas enregistrées en BD.
Code:
1 2 3 4 5 6
|
//_form (Article)
<?php $form->getObject()->setType('maValeur') ?>
<?php $form->getObject()->setCategorie('autreValeur') ?> |
Est-ce que je dois rajouter qqc au niveau du Controller (de la méthode processForm)..?
J'espère pouvoir avoir quelques réponses quant à mon problème.
Merci!!
setter sur une Doctrine_collection: many to many
ça marche maintenant, il a fallu que je surcharge les setter dans ma classe.
Maintenant je me heurte à un autre problème:
Comment faire un set sur une Doctrine_collection en cas d'une relation many to many?
quand je regarde mon BaseArticle: j'ai bien :
Code:
1 2 3
|
* @property Doctrine_Collection $Auteurs
* @method Article setAuteurs() Sets the current record's "Auteurs" collection |
quand je fais:
Code:
1 2
|
$form->getObject()->setAuteurs($auteurs) |
ça ne marche pas.
en lisant la doc Dctrine, j'ai trouvé qu'on peut utiliser un add() sur les colelctions, alors j'ai testé ce code:
Code:
1 2 3 4 5 6 7 8 9 10
|
$auteurs = ...;
$auteursCollection = new Doctrine_Collection('Auteur');
foreach ($auteurs as $auteur)
{
$auteursCollection->add($auteur);
}
$auteursCollection->save(); |
ça ne fonctionne toujours pas :calim2:
Avez vous une idée?