Symfony2.3 recaptcha не работает в моей форме
Я разрабатываю сайт с использованием фреймворка Symfony. Теперь я пытаюсь интегрировать recaptcha в мою форму, чтобы я использовал этот EWZRecaptchaBundle. Я вряд ли смог установить его, используя версию 1.* (не версию, упомянутую в документации). Я проследовал за документацией и получил ключи отсюда, и указал домен:127.0.0.1, так как я нахожусь на localhost. Затем я изменил свой formType.php
файл как это:
use EWZ\Bundle\RecaptchaBundle\Validator\Constraints as Recaptcha;
class ContactType extends AbstractType
{
/**
* @Recaptcha\True
*/
public $recaptcha;
/**
* @param FormBuilderInterface $builder
* @param array $options
*/
public function buildForm(FormBuilderInterface $builder, array $options)
{
$builder
->add('name')
->add('email')
->add('subject')
->add('message')
->add('recaptcha', 'ewz_recaptcha')
;
}
и добавил recaptcha в мой файл ветки так:
{% form_theme form 'EWZRecaptchaBundle:Form:ewz_recaptcha_widget.html.twig' %}
{{ form_widget(form.recaptcha, { 'attr': {
'options' : {
'theme': 'light',
'type': 'image'
},
} })
}}
Но когда я пытаюсь отобразить страницу, я получаю: The parameter "fr" must be defined.
Глядя в подробности об ошибке я обнаружил:
at appProdDebugProjectContainer ->getParameter ('fr')
in C:\wamp\www\fstn\vendor\excelwebzone\recaptcha-bundle\EWZ\Bundle\RecaptchaBundle\Form\Type\RecaptchaType.php at line 62 -
$this->publicKey = $container->getParameter('ewz_recaptcha.public_key');
$this->secure = $container->getParameter('ewz_recaptcha.secure');
$this->enabled = $container->getParameter('ewz_recaptcha.enabled');
$this->language = $container->getParameter($container->getParameter('ewz_recaptcha.locale_key'));
}
/**
Это связано с версией пакета Recaptcha, который я установил? Как я могу это исправить?
1 ответ
Попробуйте изменить эту строку:
$ this-> language = $ container-> getParameter ($ container-> getParameter ('ewz_recaptcha.locale_key'));
на это: $this->language = $container->getParameter('ewz_recaptcha.locale_key');
Эта проблема должна быть исправлена в версии 2.X