Symfony 1.4 我在获取隐藏字段的值时遇到问题



当我创建新记录时,在操作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'); ?>

然后,我查看val2的值,但值val1为空。

这是完整的代码,带有Flash添加:

protected function processForm(sfWebRequest $request, sfForm $form)
  {
    $form->bind($request->getParameter($form->getName()), $request->getFiles($form->getName()));
    if ($form->isValid())
    {      
      $mensajes = $form->save();
       $form_vals1 = $this->form->getValue('idmensajes');
      $form_vals2= $this->form->getValue('cuerpo');
         $this->getUser()->setFlash("val1", $form_vals1);
        $this->getUser()->setFlash("val2", $form_vals2);  
      $this->redirect('mensajes/index');

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

试试这个:

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

上发

尝试:

 $mensajes = $form->save();
 $idmensajes = $mensajes->getIdmenSajec()// or other getter 

最新更新