Вы можете использовать html формы, но это обойдёт систему проверки форм Symfony.
Вы по-прежнему можете создавать динамические формы, создавая и добавляя виджеты ввода в текущую форму или новую форму внутри действия. Затем вы можете отобразить форму в шаблоне, и динамически сгенерированные поля также будут частью формы.
Если вы начинаете с MyForm.class.php в lib / forms, обязательно добавьте:
$this->validatorSchema->setOption('allow_extra_fields', true);
В противном случае вы автоматически получите ошибки проверки. Если вы хотите добавить поля в форму в действии, вы должны сделать что-то вроде этого:
$this->form = new MyForm();
$widgetSchema = $this->form->getWidgetSchema();
$widgetSchema['add_field'] = new sfWidgetFormInputText();
Когда вы повторяете свою форму, к ней добавляется ввод 'add_field'.