Unexpected extra form field named
salut !
J'ai un problème avec les embeded forms à la validation.
Je mets en forme moi même le formulaire, et je ne sais pas si je fais ça dans les règles de l'art... Cela a marché avant que je ne bricole le formulaire moi-même..
Voici l'erreur que j'ai lorsque j'essaye d'envoyer le formulaire
Code:
1 2 3
|
* Unexpected extra form field named "idvictime".. |
Le formulaire VictimeForm est inclu dans le formulaire DeclarationForm.
Voici un extrait du schema.yml de mes deux tables
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44
| Declaration:
connection: doctrine
tableName: Declaration
columns:
iddeclaration:
type: integer(4)
fixed: false
unsigned: false
primary: true
autoincrement: true
***
idvictime:
type: integer(4)
fixed: false
unsigned: false
primary: false
notnull: false
autoincrement: false
***
relations:
***
Victime:
local: idvictime
foreign: idvictime
type: one
***
Victime:
connection: doctrine
tableName: Victime
columns:
idvictime:
type: integer(4)
fixed: false
unsigned: false
primary: true
autoincrement: true
***
relations:
***
Declaration:
local: idvictime
foreign: idvictime
type: many |
Voici un extrait du template (_form.php) :
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74
| <form class="Formulaire" action="<?php echo url_for('declaration/'.($form->getObject()->isNew() ? 'create' : 'update').(!$form->getObject()->isNew() ? '?iddeclaration='.
$form->getObject()->getIddeclaration() : '')) ?>" method="post" <?php $form->isMultipart() and print 'enctype="multipart/form-data" ' ?>>
<?php if (!$form->getObject()->isNew()): ?>
<input type="hidden" name="sf_method" value="put" />
<?php endif; ?>
<fieldset>
<legend><?php echo('Victime'); ?></legend>
<ul class='formulaire'> // embeded form
<span>
<?php echo $form['Ajout d\'une victime']['matricule_rh']->renderLabel(); ?>
<?php echo $form['Ajout d\'une victime']['matricule_rh']->renderHelp() ?>
<?php echo $form['Ajout d\'une victime']['matricule_rh']->hasError() ? ' <span style="color: Red;">'.$form['Ajout d\'une victime']['matricule_rh']->getError().'</span>' : '' ?>
</span>
<li>
<?php echo $form['Ajout d\'une victime']['matricule_rh']->render();?>
</li>
<span>
<?php echo $form['Ajout d\'une victime']['nom']->renderLabel(); ?>
<?php echo $form['Ajout d\'une victime']['nom']->renderHelp() ?>
<?php echo $form['Ajout d\'une victime']['nom']->hasError() ? ' <span style="color: Red;">'.$form['Ajout d\'une victime']['nom']->getError().'</span>' : '' ?>
</span>
<li>
<?php echo $form['Ajout d\'une victime']['nom']->render();?>
</li>
<span>
<?php echo $form['Ajout d\'une victime']['prenom']->renderLabel(); ?>
<?php echo $form['Ajout d\'une victime']['prenom']->renderHelp() ?>
<?php echo $form['Ajout d\'une victime']['prenom']->hasError() ? ' <span style="color: Red;">'.$form['Ajout d\'une victime']['prenom']->getError().'</span>' : '' ?>
</span>
***
</ul>
<ul class='formulaire'>
<li>
<span>
<?php echo $form['idsituation']->renderLabel(); ?>
<?php echo $form['idsituation']->renderHelp() ?>
<?php echo $form['idsituation']->hasError() ? ' <span style="color: Red;">'.$form['idsituation']->getError().'</span>' : '' ?>
</span>
</li>
<li>
<?php echo $form['idsituation']->render() ?>
</li>
<li>
<span>
<?php echo $form['idregime']->renderLabel(); ?>
<?php echo $form['idregime']->renderHelp() ?>
<?php echo $form['idregime']->hasError() ? ' <span style="color: Red;">'.$form['idregime']->getError().'</span>' : '' ?>
</span>
</li>
<li>
<?php echo $form['idregime']->render() ?>
</li>
</ul>
***
<div>
<?php echo $form->renderHiddenFields() ?>
<input type="submit" value="Enregistrer" />
<a href="<?php echo url_for('declaration/index') ?>">Revoir la liste</a>
<?php if (!$form->getObject()->isNew()): ?>
<?php echo link_to('Supprimer', 'declaration/delete?iddeclaration='.$form->getObject()->getIddeclaration(), array('method' => 'delete', 'confirm' => 'Etes vous sûr(e) ?')) ?>
<?php endif; ?>
</div>
</form> |
Mon fichier DeclarationForm.class :
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20
|
<?php
class DeclarationForm extends BaseDeclarationForm
{
public function configure()
{
$this->widgetSchema->setformformattername('list');
***
unset($this['date_creation'],$this['clone'],$this['iddeclaration_clone'],$this['idvictime'],$this['idetat'],$this['auteur_login'],$this['iddeclaration_clone']);
$victime = $this->getObject()->getVictime();
$victimeForm = new VictimeForm($victime);
unset($victimeForm['idvictime']);
$this->embedForm('victime', $victimeForm);
}
} |
Je tourne en rond là dessus depuis un moment, quelqu'un peut m'aider ?
Merci beaucoup d'avance