こんにちは皆さん、フォームにこの問題があります
The CSRF token is invalid. Please try to resubmit the form
そのようなビューでフォームを表示します
<form id="target" action="#" data-idea="{{idea}}" method="post" {{ form_enctype(form) }}>
{{ form_widget(form) }}
</br>
</br>
<input type="submit" value="add comment"/>
</form>
私のコントローラーにはこれがあります
パブリック関数 addCommentAction(){
$ideaId= $_POST['idea'];
$coment= new Comentario();
$form= $this->createForm(new ComentarioFormType(), $coment);
$request= $this->getRequest();
if($request->getMethod() == 'POST'){
$form->bindRequest($request);
if ($form->isValid()){
$em= $this->getDoctrine()->getEntityManager();
$coment->setIdea($ideaId);
$em->persist($coment);
$em->flush();
}
...
}
にエラーがあります($form->isValid())
。コードをデバッグすると、これを尋ねると isValid 関数が false を返しif ($this->hasErrors())
、エラーが表示されます。
controller の行を消去する if ($form->isValid())
と、フィールドの説明が null であるため、関数はフォームを保持しません。
これが私のフォームです
public function buildForm( FormBuilder $builder, array $options)
{
$builder->add('descripcion', 'textarea');
}
public function getDefaultOptions( array $options){
return array('data_class'=> 'ComentBundle\Entity\Coment');
}
public function getName()
{
return 'coment';
}
何か案が?