У меня проблема с символической формой в Symfony2. (2.7.0)Symfony 2. Значок CSRF недействителен
Действие:
public function registerProcessAction(Request $request){
$form = $this->createForm(new RegistrationType(), new Registration());
$form->handleRequest($request);
if ($form->isValid()) {
die('valid');
}
else{
die('invalid');
}
}
И моя форма:
public function configureOptions(OptionsResolver $resolver)
{
$resolver->setDefaults(array(
'data_class' => 'My\Bundle\Entity\User'
));
}
Когда я проверить форму, всегда показывают ту же ошибку:. "токен CSRF недействителен Пожалуйста попробуйте повторно отправить форму ". Я уверен, что вход скрыт в форме. Это вид:
<?php
echo $view['form']->start($form);
echo $view['form']->widget($form);
echo $view['form']->end($form);
?>
Кто-нибудь может мне помочь?
Я проверил, чтобы отключить защиту CSRF, как это:
Действие:
$form = $this->createForm(new RegistrationType(), new Registration(), array('csrf_protection' => false));
Форма:
public function configureOptions(OptionsResolver $resolver)
{
$resolver->setDefaults(array(
'data_class' => 'My\Bundle\Entity\User',
'csrf_protection' => false
));
}
Но другая ошибка появляется: Эта форма не должна содержать дополнительные поля. Поскольку скрытый ввод токена, он еще в форме, и я не знаю, чтобы удалить его.
Thankyou!
Я не уверен, если вам просто не хватает echo $ view ['form'] -> rest ($ form); – DerStoffel
Запуск 'git bisect' указывает пальцем на фиксацию, в которой я обновился с Symfony 2.7.1 до 2.7.2. –