2010-10-02 7 views
5

यदि मेरे पास एक फॉर्म तत्व है जिसमें एकाधिक सत्यापनकर्ता संलग्न हैं (इस उदाहरण में 3), तो मैं प्रत्येक त्रुटि वैधता विफल होने पर कस्टम त्रुटि संदेश बनाने के लिए addErrorMessage का उपयोग कैसे करूं। क्या प्रत्येक वैधकर्ता के लिए एक कस्टम संदेश जोड़ने का कोई तरीका है?ज़ेंड मान्यकर्ताएं और त्रुटि संदेश: addValidator और addErrorMessage

$element = new Zend_Form_Element_Text()... 
$element->.... 
     ->addValidator(...) 
     ->addValidator(...) 
     ->addValidator(...) 
     ->addErrorMessage() 

उत्तर

11

आम तौर पर यह प्रति सत्यापनकर्ता नहीं, प्रति सत्यापनकर्ता त्रुटि संदेश किया है ...

$element->setErrorMessages(array(Zend_Validate_...::CONSTANT => 'New Message')); 

लेकिन मैं अक्सर करने के लिए एक तत्व के त्रुटियों के सभी ओवरराइड करने के लिए पसंद करते हैं एक भी

$element->setErrorMessages(array('Single Error')); 

या , अगर मुझे प्रति सत्यापनकर्ता की आवश्यकता है, तो यह काम करता है ...

$validator->setMessages('string error') 

को सभी एक वैधकर्ता की त्रुटियों को एक संदेश में ओवरराइड करना चाहिए। मुझे यह कहीं भी दस्तावेज नहीं मिला, लेकिन यह मेरे लिए काम करता है। इस वजह से, यह सभी संस्करणों के लिए काम नहीं कर सकता है?

मेरे लिए, त्रुटि संदेश प्रबंधन कुछ गड़बड़ है जब तक आप हर संभव त्रुटि संदेश को ओवरराइड नहीं करना चाहते हैं, लेकिन उम्मीद है कि इनमें से एक समाधान आपके लिए काम करता है।

चीयर्स

+0

मेरे पास कुछ अतिरिक्त त्रुटियां हैं लेकिन पहले सत्यापन का उपयोग नहीं कर रहा है –

6

नीचे अपना सत्यापनकर्ता के साथ अपना संदेश जोड़ें। उदाहरण:

->addValidator('StringLength', false, array(0,255,'messages'=>'Cannot be more than 255 chars')) 

->addValidator('NotEmpty', true, array('messages'=>'Cannot be empty')) 
2

इस

की तरह अपने संदेश जोड़ें -> addValidator ('अल्फा', true, सरणी ('संदेश' => सरणी ('notAlpha' => "वर्णमाला चरित्र केवल दर्ज करें उत्पाद नाम में
")));

अपने त्रुटि स्ट्रिंग के अनुसार सत्यापनकर्ता संदेश जोड़ें

+0

मुझे 'नोट एल्फा' के माध्यम से निर्दिष्ट संदेश हैंडलिंग पसंद है। क्या आप मुझे मार्गदर्शन कर सकते हैं कि मैं उन वैध पहचानकर्ताओं के लिए उन पहचानकर्ताओं में से अधिक कहां पा सकता हूं? वैसे भी धन्यवाद: ^) – Katia

+0

आपको इसकी वैध फ़ाइल से त्रुटि संदेश के इन varibale मिलते हैं। पथ प्रोजेक्ट/लाइब्रेरी/ज़ेंड/मान्य अपने वैध नियम का चयन करें, यहां आपको "कॉन्स्ट" की सूची मिलती है जो त्रुटि संदेश के लिए है –

0

addErrorMessage ('आपका कस्टम संदेश'); कस्टम संदेश प्रिंट करने का यह सबसे आसान तरीका है।

addErrorMessage libraray/Zend/प्रपत्र/Elements.php अंदर परिभाषित किया गया है

आशा है कि यह मदद करता है !!

संबंधित मुद्दे