admin generatorのeditアクションで、編集後に再度編集画面ではなく、リストに飛ばしたい要件があったのでメモ。例によってSymfony 1.4+Doctrine+admin generator。
class hogeActions extends autoHogeActions
{
public function executeUpdate(sfWebRequest $request)
{
$this->forward404Unless($request->isMethod('put'));
$this->hoge = $this->getRoute()->getObject();
$this->form = $this->configuration->getForm($this->hoge);
if ($this->form->bindAndSave($request->getParameter($this->form->getName()), $request->getFiles($this->form->getName()))) {
$this->redirect('hoge');
}
$this->setTemplate('edit');
}
}
executeUpdateをオーバーライドすればOKのようです。ここではisMethodがputなことに注意。
タグ: admin generator, doctrine, PHP, symfony

HOMMA Teppei

