Doctrine Symfony 1.4我无法获取隐藏字段的值

Doctrine Symfony 1.4我无法获取隐藏字段的值,doctrine,symfony-1.4,symfony-forms,Doctrine,Symfony 1.4,Symfony Forms,创建新记录时,在操作processForm中,我需要获取名为idmensajes的隐藏字段的值。此字段是一个隐藏字段,为自动增量和密钥。 但是当我使用getValue('idmensajes')时,结果是空的。为什么?如何在processForm中获取idmensajes的值 这里是processForm的代码: protected function processForm(sfWebRequest $request, sfForm $form) { $form->bind(

创建新记录时,在操作
processForm
中,我需要获取名为
idmensajes
的隐藏字段的值。此字段是一个隐藏字段,为自动增量和密钥。 但是当我使用
getValue('idmensajes')
时,结果是空的。为什么?如何在processForm中获取idmensajes的值

这里是
processForm
的代码:

 protected function processForm(sfWebRequest $request, sfForm $form)
  {
    $form->bind($request->getParameter($form->getName()), $request->getFiles($form->getName()));
    if ($form->isValid())
    {      
          $form_vals = $this->form->getValue('idmensajes');

      $mensajes = $form->save();
      $this->redirect('mensajes/index');
以查看捕获的值​​, 对应于两个字段,我添加了:

$form_vals1 = $this->form->getValue('idmensajes');
  $form_vals2= $this->form->getValue('cuerpo');


 $this->getUser()->setFlash("val1", $form_vals1);
$this->getUser()->setFlash("val2", $form_vals2);  
在indexSuccess.php视图中,我添加了以下代码:

<?php echo 'El valor del Id es:'. $sf_user->getFlash('val1'); ?>
<br>
<?php echo 'El valor de Cuerpo es: '. $sf_user->getFlash('val2'); ?>

首先检查idmensajes是否存在,以及是否可以从表单中获取另一个字段

试试这个:

$this->form['idmensajes']->getValue(),
upd

尝试:


你能把代码贴在哪里,从哪里获得价值?@denys281我把我的流程的完整代码添加到相同的表单中:idmensajes是空的。但是,该值在视图中存在。当Symfony加载模板indexSuccess.php时,我可以看到生成的值。但是Symfony和Doctrine在什么时候创造了一个具有自动递增值的字段的值?@JorgeH,你能从你的表单中获得其他值吗?Upd回答是的,我可以得到并看到动作中的其他字段。例如,使用名为Cuerpo的字段文本,我可以获取值并查看。@JorgeH if适用于您答案中的第二个解决方案(保存后获取值)?一会儿,我正在测试新的解决方案
$this->form['idmensajes']->getValue(),
 $mensajes = $form->save();
 $idmensajes = $mensajes->getIdmenSajec()// or other getter