Bonjour,
je rencontre un problème aujourd'hui à la sauvegarde d'un formulaire
imbriquant deux traductions.
# Le contexte :
symfony : 1.3.0-DEV
php: 5.2.6-3ubuntu4.2
SERVER_SOFTWARE: 'Apache/2.2.11 (Ubuntu) PHP/5.2.6-3ubuntu4.2 with
Suhosin-Patch'
os: 'Linux tux 2.6.28-16-generic #55-Ubuntu SMP Tue Oct 20 19:48:24
UTC 2009 i686'
# Le message d'erreur obtenu :
SQLSTATE[23000]: Integrity constraint violation: 1062 Duplicate entry
'4-fr' for key 1
# Ce qui ai soumis lors de la validation du formulaire (et donné en
paramètre du bindAndSave) :
Array
(
[en] => Array
(
[nom] => Nom_en
)
[fr] => Array
(
[nom] => Nom_fr
)
[id] => 4
)
# En fouillant dans le processus d'enregistrement je constate que mon
objet prend les valeurs suivante après le doUpdateObject
(sfFormDoctrine, ligne 129):
Array
(
[id] => 4
[created_at] => 2009-10-26 15:34:11
[updated_at] => 2009-10-28 10:06:26
[Translation] => Array
(
[en] => Array
(
[id] => 4
[nom] =>
[lang] => en
)
[fr] => Array
(
[id] => 4
[nom] =>
[lang] => fr
)
[fr_FR] => Array
(
[id] => 4
[nom] =>
[lang] => fr_FR
)
)
)
Deux éléments sont surprenant :
1. L'apparition du fr_FR
2. Le fait qu'aucune traduction n'apparaisse
Je ne m'explique pas le pourquoi de ces deux constatations.
# La déclaration du formulaire :
classTotoForm extends BaseTotoForm
{
public function configure()
{
$this->embedI18n(array('en', 'fr'));
}
}
# La déclaration de mon objet dans le schema.yml :
Toto:
actAs:
Timestampable:
I18n:
fields: [nom]
columns:
nom: string(255)
---
Merci à tous pour votre aide.
Cordialement,
David BOUCHÉ
--~--~---------~--~----~------------~-------~--~----~
Vous avez reçu ce message, car vous êtes abonné au groupe Groupe "Symfony-fr"
de Google Groupes.
Pour transmettre des messages à ce groupe, envoyez un e-mail à
l'adresse [email protected]
Pour résilier votre abonnement à ce groupe, envoyez un e-mail à
l'adresse [email protected]
Pour afficher d'autres options, visitez ce groupe à l'adresse
http://groups.google.com/group/symfony-fr?hl=fr
-~----------~----~----~----~------~----~------~--~---