मैं एक बहु-चरण फ़ॉर्म बनाने के लिए Symfony2 और CraueFormFlowBundle का उपयोग कर रहा हूं। मेरे दोहराए गए ईमेल फ़ील्ड को छोड़कर सब ठीक हो रहा है। मैं नहीं कर सकता, मेरे लिए, मुझे लगता है कि लेबल को कैसे रखना है। मैं form_widget (...) और लेबल लिखकर Twig व्यू में स्वयं द्वारा फॉर्म प्रस्तुत कर रहा हूं। मैं अपने ग्राहक की इच्छा के अनुसार सबकुछ बताता हूं। अब, वह ईमेल लेबल को "ई-मेल *" और "ई-मेल की पुष्टि करें" के रूप में देखना चाहता है (सितारों की आवश्यकता होने के बाद से)। अगर मैं form_row() का उपयोग करके दोहराए गए तत्व प्रस्तुत करता हूं, तो त्रुटियों को अब फॉर्म पर प्रदर्शित नहीं किया जाता है (लेकिन मेरे पास लेबल, स्नैप पर नियंत्रण है)। त्रुटियों का एकमात्र तरीका प्रदर्शित होता है (मुझे क्यों न पूछें), form_widget (form.giver.email) का उपयोग करके है जो पूरे दोहराए गए तत्व ऑब्जेक्ट को इंगित करता है। समस्या है, पूरे दोहराए गए तत्व को प्रस्तुत करने के लिए form_widget का उपयोग करके मुझे लेबल पर कोई नियंत्रण नहीं मिलता है।Symfony2 फॉर्म दोहराया तत्व कस्टम लेबल
पूरे दोहराए गए तत्व को प्रस्तुत करके, यह "first_name" और "second_name" पैरामीटर का उपयोग करके लेबल प्रिंट करता है। स्पष्ट कारणों से मैं इन मानकों में पूंजी अक्षरों और न ही धब्बे और सितारों को नहीं डाल सकता। मैं विकल्प सरणी में लेबल सेट करने का प्रयास करते हैं, तो उस लेबल Symfony2 दस्तावेज़ में वर्णित के रूप में दोनों क्षेत्रों के लिए पारित हो जाता है ...
मैं "प्रथम" और ".second" टहनी में का उपयोग कर मुद्रण कोशिश की, लेकिन मुझे यह बताते हुए एक त्रुटि मिलती है कि ये फॉर्म व्यू में मौजूद नहीं हैं।
अब मैं चाहता हूं कि दो लेबल अलग से सेट करने में सक्षम हों! यहां मेरा वर्तमान कोड है:
$builder->add('email', 'repeated', array(
'type' => 'email',
'first_name' => 'email',
'second_name' => 'confirm',
'invalid_message' => 'The e-mails you provided did not match.',
'error_bubbling' => false
));
यह लेबल को "ईमेल" और "पुष्टि" के रूप में प्रिंट करता है। यहाँ "विकल्प" सरणी उपयोग कर रहा है:
$builder->add('email', 'repeated', array(
'type' => 'email',
'first_name' => 'email',
'second_name' => 'confirm',
'invalid_message' => 'The e-mails you provided did not match.',
'error_bubbling' => false,
'options' => array(
'label' => "TESTTT"
),
));
यह दोनों दोहराया क्षेत्रों के लिए "TESTTT" लेबल प्रिंट होगा। क्या मैं इसके बारे में कुछ कर सकता हूं? जैसा ऊपर बताया गया है, form_row() का उपयोग फॉर्म भरने पर त्रुटियों को प्रदर्शित नहीं करता है यदि ईमेल बराबर नहीं हैं या यदि वे खाली हैं। इसलिए मैं form_widget() का उपयोग करने और पूरी बार-बार ऑब्जेक्ट को प्रस्तुत करने के लिए बाध्य हूं।
आपके समय के लिए अग्रिम धन्यवाद।
एक 'FormBuilder' भीतर काम कर रहा है (या फॉर्म प्रकार) सिंटैक्स '$ फॉर्म होगा- बिल्डर-> प्राप्त करें ('पासवर्ड फ़ील्डनाम') -> प्राप्त करें ('दूसरा') -> सेट एट्रिब्यूट ('लेबल', 'पासवर्ड फिर से दर्ज करें');' – Nick