Как решить Примечание: неопределенная переменная: форма ...? - PullRequest
0 голосов
/ 31 мая 2011

когда я создал свою страницу 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 голосов
/ 31 мая 2011

Итак, я нашел то, что искал.Я забыл добавить

  $this->form = new addAnnonceForm();

в свой executeIndex (действие)

thx:)

0 голосов
/ 31 мая 2011

Когда вы автоматически генерируете модель доктрины, форма создается как частичная и встраивается в новые и редактируемые шаблоны. Если вы проверите свои действия newSuccess, createSuccess, editSuccess, updateSuccess, вы найдете назначение переменной формы, как упомянуто prodigitalson, так что эта ошибка там не появится.

Однако форма не становится автоматически доступной в indexSuccess, поскольку предполагается, что эта страница в соответствии с соглашением об именах будет использоваться для перечисления объектов. Нарушение соглашения может привести к некоторой путанице позже.

Еще один совет: если вы хотите создать экран, похожий на административный сервер Symfony, где вы перечисляете все объекты вместе с формой для добавления / редактирования объектов, вы можете использовать generator.yml для автоматической генерации ваших представлений. Не забудьте включить css, js & images из папки web / sf в каталог symfony

...