如何解决通知:未定义的变量:form ...?

时间:2011-05-31 02:25:34

标签: php forms symfony1 render

当我创建了我的页面indexSuccess.php时,我使用了如下指令:

    <?php echo $form['titre']->render();?>

执行时会出现错误:

    Notice: Undefined variable: form in C:\wamp\www\MyProject\apps\frontend\modules\addAnnonce\templates\indexSuccess.php on line 84

    Fatal error: Call to a member function render() on a non-object in C:\wamp\www\MyProject\apps\frontend\modules\addAnnonce\templates\indexSuccess.php on line 84

我该怎么做才能解决这个问题?

2 个答案:

答案 0 :(得分:0)

当您自动生成一个学说模型时,该表单将被创建为部分并嵌入到新的&amp;编辑模板。如果你检查newSuccess,createSuccess,editSuccess,updateSuccess动作,你会发现prodigitalson提到的表单变量的赋值,所以这个错误不会出现在那里。

但是,表单不会自动在indexSuccess上可用,因为命名约定的页面应该用于列出对象。打破惯例可能会在以后引起一些混乱。

还有一个提示:如果要创建类似于symfony管理员后端的屏幕,列出所有对象以及要添加/编辑对象的表单,可以使用generator.yml自动生成视图。请务必在symfony目录中的web / sf文件夹中包含css,js和amp;图像

答案 1 :(得分:0)

所以,我发现了我正在寻找的东西。我忘了添加

  $this->form = new addAnnonceForm();

在我的executeIndex(action)

thx:)