Symfony 助手“操作”未定义

Symfony 助手“操作”未定义,symfony,Symfony,我是Symfony2框架的新手,我的项目中有错误 我遇到的错误是:未定义辅助操作。我创建了一个控制器函数,在该函数中我添加了一些用于构建表单的代码和通过模板渲染表单的渲染函数 现在,我试图通过在索引页面中包含表单模板来在我的index.html.php页面中显示表单,但是我有这样的显示:没有定义helper操作 public function formAction(Request $request) { // $task = new Task(); // $task->se

我是Symfony2框架的新手,我的项目中有错误

我遇到的错误是:未定义辅助操作。我创建了一个控制器函数,在该函数中我添加了一些用于构建表单的代码和通过模板渲染表单的渲染函数

现在,我试图通过在索引页面中包含表单模板来在我的index.html.php页面中显示表单,但是我有这样的显示:没有定义helper操作

public function formAction(Request $request)
{
    // $task = new Task();
    // $task->setTask('Write a blog post');
    // $task->setDueDate(new \DateTime('tomorrow'));
    $form = $this->createFormBuilder($task)->add('task', 'text')->add('dueDate', 'date')->add(
        'save',
        'submit',
        array('label' => 'Create Task')
    )->getForm();

    return $this->render('HarriseqBundle:Main:login-form.html.php', array('form' => $form->createView()));
}

您可以在login-form.html.php中找到问题。因为print$view['action']->rendernew\Symfony\Component\HttpKernel\Controller\ControllerReference'HarriseqBundle:Mai‌​n:形式';代码不正确。请使用本教程创建表单

错误不在控制器的操作中,而是在表单渲染中

echo $view['action']
这不是一个正确的方法来完成你想做的事情

echo $view['form']

因此,基本上,按如下方式编辑代码bundle:Main:login-form.html.php

<?php echo $view['form']->start($form) ?>
<?php echo $view['form']->widget($form) ?>
<?php echo $view['form']->end($form) ?>

start、widget和end方法做什么

start方法将呈现表单对象的起始标记,因此基本上您可以向其传递一些参数,例如提交方法

end方法将呈现结束标记

若应用于整个表单,小部件将呈现表单的所有元素,若将表单元素指定为参数,则仅呈现该元素


还可以查看rest方法

我的表单控制器代码:公共函数formActionRequest$request{//$task=new task;//$task->setTask'Write a blog post';//$task->setDueDatenew\DateTime'tomory';$form=$this->createFormBuilder$task->add'task','text'->add'dueDate','date'->add'save','submit',array'label=>'Create task'->getForm return$this->render'HarriseqBundle:Main:login:form.html.php','form'=>->createView;}感谢Michael Sivolobov先生编辑我的帖子。您好,您能显示login-form.html.phpprint$view['action']->rendernew\Symfony\Component\HttpKernel\Controller\ControllerReference'HarriseqBundle:Main:form';echo$view['form']->启动$form,但它显示另一个错误消息:未定义变量form@charly:你能用var_dump$view更新你的问题吗?我确信如果你使用的名称是正确的,这个方法应该可以工作,但是页面是空白的。
<?php 
  echo $view['form']->start($form);
  echo $view['form']->widget($form);
  echo $view['form']->end($form);