मेरे मान्यता लग रहा हैमैं Symfony2
Acme\UserBundle\Entity\User:
constraints:
- \Symfony\Bridge\Doctrine\Validator\Constraints\UniqueEntity: { fields:username, message: "Username already in use" }
- \Symfony\Bridge\Doctrine\Validator\Constraints\UniqueEntity: { fields:email, message: "Email address already in use" }
properties:
username:
- NotBlank: ~
- MinLength: { limit: 2, message: "Your username must have at least {{ limit }} characters." }
email:
- Email:
message: The email "{{ value }}" is not a valid email.
checkMX: true
की तरह मेरे नियंत्रक की तरह:
$form = $this->createForm(new RegistrationType());
$form->bindRequest($request);
if ($form->isValid()) {
//... save to db
}else{
$errors = $form->getErrors();
//... pass the errors back as json
}
मैं एक उपयोगकर्ता पंजीकरण नियंत्रक का निर्माण करने की कोशिश कर रहा हूँ यह AJAX अनुरोध के माध्यम से जमा किया गया है। हालांकि, जब सत्यापन में त्रुटियों ट्रिगर कर रहे हैं, $error
चर लगता है: समस्या
[2011-11-07 19:19:44] app.INFO: array (
0 =>
Symfony\Component\Form\FormError::__set_state(array(
'messageTemplate' => 'Email address already in use',
'messageParameters' =>
array (
),
)),
1 =>
Symfony\Component\Form\FormError::__set_state(array(
'messageTemplate' => 'Your username must have at least {{ limit }} characters.',
'messageParameters' =>
array (
'{{ value }}' => '1',
'{{ limit }}' => 2,
),
)),
) [] []
मुझे नहीं पता कि जो क्षेत्र है कि त्रुटि से मेल खाती है है। क्या उस डेटा को खोजने का कोई तरीका है ताकि जब मैं जेसन प्रतिक्रिया भेजूं, तो मैं त्रुटि संदेश को संबंधित फ़ील्ड से जोड़ सकता हूं।
'का उपयोग करते हुए' '$ फार्म> getErrors()' '' रिटर्न त्रुटियां, हालांकि '' '$ form-> प्राप्त करें ('उपयोगकर्ता नाम') -> getErrors()' '' एक ही डेटा सबमिट होने के बावजूद कोई त्रुटि नहीं देता है। ऐसा लगता है कि त्रुटियों को सामान्य रूप से प्रत्येक फ़ील्ड के बजाय सामान्य रूप से जोड़ा जाता है। – ed209
क्या आपने कहीं भी त्रुटि_बबलिंग सक्षम की है? – Kasheen
हां, उदाहरण के लिए '' '$ builder-> जोड़ें ('उपयोगकर्ता नाम', 'टेक्स्ट', सरणी ('error_bubbling' => सत्य));' ' – ed209