Я хочу повторить форму «SportsDayForm» 38 раз, чтобы создать «CalendarForm», поэтому я использовал embedForm следующим образом:
class CalendarForm extends sfForm
{
public function configure()
{
$subForm = new sfForm();
$form = new SportsDayForm();
for ($i = 0; $i < 38; $i++)
{
$subForm->embedForm($i, $form);
}
$this->embedForm('calendar', $subForm);
}
}
Шаблон такой:
<?php use_stylesheets_for_form($form) ?>
<?php use_javascripts_for_form($form) ?>
<form action="<?php echo url_for('calendar/'.($form->getObject()->isNew() ? 'create' : 'update').(!$form->getObject()->isNew() ? '?id_sportsday='.$form->getObject()->getIdSportsDay() : '')) ?>" method="post" <?php $form->isMultipart() and print 'enctype="multipart/form-data" ' ?>>
<?php if (!$form->getObject()->isNew()): ?>
<input type="hidden" name="sf_method" value="put" />
<?php endif; ?>
<?php echo $form ?>
</form>
но php возвращает эту фатальную ошибку "Вызов неопределенного метода CalendarForm :: getObject () в D: \ htdocs \ soccer \ apps \ backend \ modules \ calendar \ templates_form.php в строке 4".
Кто-нибудь может мне помочь?