|
Publicité ' | |||||||||||||||||||||||
|
|
#1 | ||||
|
Membre à l'essai
![]() Développeur Web Inscription : avril 2011 Messages : 40 ![]() |
Bonjour,
Encore un soucis avec l'utilisation de Symfony Donc voilà, j'ai mon formulaire Equipement. Dans ce formulaire, j'ai des champs cachés comme par exemple le Dcreat et le Ucreat. Lors de mon affichage de donnée, je prédéfinis les valeurs de ces champs cachés avec ce bout de code : Code :
Là où ca se complique, c'est que j'ai crée en Ajax, l'ajout de plusieurs lignes d'équipement. Ca me permet d'insérer des formulaires imbriquées dans mon formulaire principale. Mon soucis est, comment puis-je faire pour enregistrer la date Dcreat de mes formulaires imbriquées ? Le code donnée ci-dessus, ne sert que pour mon formulaire principale. J'ai déjà essayé : Code :
Merci d'avance pour vos réponses |
||||
|
|
00
|
|
|
#2 |
![]() ![]() Michel RottaResponsable d'exploitation informatique Inscription : septembre 2005 Messages : 4 913 ![]() |
Je dirais que tu n'as pas le bon code au bon endroit.
Initialiser ces données dans le template (ce que j'ai compris) est le plus mauvais endroit pour les initialiser. De plus, je ne vois pas l'intérêt de les faire transiter par le poste utilisateur. En prime, rien n'interdit à ton utilisateur de modifier son POST avant qu'il ne te soit renvoyé, y compris ces deux champs cachés ! Il peut alors créer un enregistrement anti daté, fait par quelqu'un d'autre... Réfléchissons, quant as-t'on vraiment besoin de ces données ? Lors de l'enregistrement. En fait, dans l'objet du modèle, juste avant qu'un nouvel enregistrement ne soit créé. Tu as maintenant le lieu et le moment où mettre tes données, à toi de jouer. Et enlèves les du template où elle n'ont rien à faire, ainsi que du DOM ou elles n'ont pas à circuler...
__________________
Si tu donnes un poisson à un homme, il mangera un jour. Si tu lui apprends à pêcher, il mangera toujours (Lao Tseu).
|
|
00
|
|
|
#3 |
|
Membre à l'essai
![]() Développeur Web Inscription : avril 2011 Messages : 40 ![]() |
Je fais un :
Code :
$this->form->setdefault('dcreat', date('d-m-Y H:i:s')); |
|
|
00
|
|
|
#4 |
![]() ![]() Michel RottaResponsable d'exploitation informatique Inscription : septembre 2005 Messages : 4 913 ![]() |
Si tu es sur un sfFormDoctrine, ls setDefault n'est pas la bonne commande à utiliser pour donner des valeurs par défault.
Il faut créer un enregistrement vierge, lui donner les valeurs et l'utiliser pour initialiser le form. Dans tous les cas, pour ce que tu veux faire, je maintiens que ce n'est pas la bonne solution et qu'il faut que ton code se trouve dans la méthode perSave() de ton objet du modèle.
__________________
Si tu donnes un poisson à un homme, il mangera un jour. Si tu lui apprends à pêcher, il mangera toujours (Lao Tseu).
|
|
00
|
Copyright © 2000-2012 - www.developpez.com