उपयोग नियमित अभिव्यक्ति शून्य
रोकने inorder करने के लिए अपने इकाई कक्षा में नीचे नीचे ओवरराइड समारोह लिखते हैं, और अपनी संपत्ति है जो आप को मान्य करने की जरूरत है निर्दिष्ट करें।
नीचे दिया गया उदाहरण पिनकोड को मान्य करने के लिए है, यहां पिनकोड फ़ील्ड में मैं केवल 10 अंकों तक 0-9 संयोजनों को स्वीकार करता हूं।
"^ \ d + $" यह नियमित अभिव्यक्ति है जिसका उपयोग मैं अन्य पात्रों को रोकने के लिए करता था।
इस समारोह अधिभावी के लिए आप भूल जाते हैं नहीं इन सभी जरूरी
अपने इकाई वर्ग
आप को मान्य करने के लिए है कि में शामिल नीचे वर्गों
use Symfony\Component\Validator\Mapping\ClassMetadata;// for overriding function loadValidatorMetadata()
use Symfony\Component\Validator\Constraints\NotBlank;// for notblank constrain
use Symfony\Component\Validator\Constraints\Email;//for email constrain
use Symfony\Component\Validator\Constraints\MinLength;// for minimum length
use Symfony\Component\Validator\Constraints\MaxLength; // for maximum length
use Symfony\Component\Validator\Constraints\Choice; // for choice fields
use Symfony\Component\Validator\Constraints\Regex; // for regular expression
public static function loadValidatorMetadata(ClassMetadata $metadata)
{
$metadata->addPropertyConstraint('pincode', new NotBlank(array('message' => 'Does not blank')));
$metadata->addPropertyConstraint('pincode', new Regex(array('pattern'=>'/^\d+$/','message' => 'must be number')));
$metadata->addPropertyConstraint('pincode', new MaxLength(array('limit'=>'6','message' => 'must maximum 6 digits')));
$metadata->addPropertyConstraint('pincode', new MinLength(array('limit'=>'6','message' => 'must minimum 6 digits')));
}
शामिल करना चाहिए। तो आपके मामले में एक उचित नियमित अभिव्यक्ति का उपयोग करें जो '0' की अनुमति नहीं देता है।
मुबारक
स्रोत
2011-12-19 03:58:26
क्या आप कृपया मुझे बता सकते हैं कि कॉलबैक बाधा को कैसे कार्यान्वित किया जाए? मैं Symfony2 दस्तावेज़ देख रहा हूं और मुझे नहीं पता कि उन मूल्यों का उपयोग कैसे किया जा सकता है जिन्हें मैं जांचना चाहता हूं [...] isValid() फ़ंक्शन। –
ऐसा लगता है कि कोई डेटा क्लास नहीं होने पर यह काम नहीं करता है (जब आप सरणी के साथ काम करते हैं)। – umpirsky