Можете ли вы объяснить, почему мне нужна новая форма для функции обновления в Symfony? - PullRequest
0 голосов
/ 10 мая 2011

У меня есть действие, которое создает форму.Затем действие формы указывает на следующую функцию:

  public function executeUpdateInlineForm(sfWebRequest $request)
{

  $overdueInvestigation = Doctrine_Core::getTable('investigation')->find( $request->getParameter('id'));    
  $this->form = new investigationInlineForm($overdueInvestigation);

  $this->processInlineForm($request, $this->form);
}

Что я не понимаю, так это зачем мне создавать новую форму, когда все, что я пытаюсь сделать, это сохранить существующую?

Я спрашиваю об этом, потому что в моей форме есть поля из двух разных таблиц, и я хочу иметь возможность обновлять обе таблицы при отправке пользователем.Поэтому мне нужно выработать правильный способ сделать это.

Ответы [ 2 ]

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

Вы имеете дело с классом, поэтому вы должны создать его экземпляр.Когда форма отправлена, ваш сценарий, который изначально обработал ответ, и все, что вошло в него, давно исчезли.Эта функция больше не знает об этом.

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

Причина, по которой symfony обычно создает новую форму при отправке формы, заключается в обработке отображения формы с выделенными недопустимыми полями, чтобы пользователь мог повторить попытку.

...