データベースからのエントリのリストがあります。ユーザーが最初に編集/表示ページに移動してエントリを削除する必要がないように、すべての行の最後に「削除ボタン」を配置したいと思います。
次のように、csrf トークンを使用して非表示の入力フィールドを作成してみました。
return $this->createFormBuilder()
->getForm()
;
これは出力されます:
<div id="form">
<input type="hidden" id="form__token" name="form[_token]" value="6c98ebfa9df07.....">
</div>
フォームの残りの部分は小枝テンプレートに配置して、すべてのフォームがエントリの ID に従って独自のアクション パスを持つようにします。
残念ながら、小枝テンプレートでは最初の
{{ form_widget(delete_form) }}
レンダリングされます。
この非表示フィールドをより頻繁に使用するにはどうすればよいですか? または、この全体を別の方法で行う方法はありますか?
助けてくれてありがとう
public function indexAction()
{
$em = $this->getDoctrine()->getManager();
$deleteForm = $this->createDeleteForms();
$entities = $em->getRepository('IntranetServicesBundle:Laender')->findAll();
return $this->render('IntranetServicesBundle:Laender:index.html.twig', array(
'entities' => $entities,
'delete_form' => $deleteForm->createView(),
));
}
private function createDeleteForms()
{
return $this->createFormBuilder()
->add('id', 'hidden')
->getForm()
;
}