2012-12-09 2 views
40

मेरे पास एक रेल एप्लिकेशन में एक उपयोगकर्ता मॉडल है जिसमें एक ईमेल फ़ील्ड है। क्या कोई डिफ़ॉल्ट सत्यापन है जो सुनिश्चित करेगा कि ईमेल सही प्रारूप में है? यदि नहीं, तो मैं उस क्षेत्र को मान्य करने के बारे में कैसे जाउंगा?ActiveRecord में किसी ईमेल फ़ील्ड के प्रारूप को कैसे मान्य किया जाएगा?

+0

:

validates :email, email_format: { message: "doesn't look like an email address" } 

या आप एक मणि का उपयोग नहीं करना चाहते हैं, regex का उपयोग वैध ईमेल पता 'क्या आपका मतलब है कि ईमेल वास्तव में मौजूद है, या यह ईमेल प्रारूप फिट बैठता है? – nurettin

+12

यह अजीब बात है कि यह बंद था। यह बहुत विशिष्ट नहीं हो सकता है, लेकिन मुझे यहां एक वास्तविक सवाल दिखाई देता है। – sscirrus

+0

@sscirrus ठीक है, पूरी तरह से बुनाई लेने के लिए, वह वास्तव में एक सवाल नहीं पूछा था। इसके अलावा, एसओ पर कोड हैंडआउट मांगने के लिए यह अच्छा आचरण नहीं है। एक और उचित सवाल यह होगा कि "कोई कोड लिखने के बारे में कैसे होगा जो [वांछित परिणाम] करता है?" – anthropomorphic

उत्तर

96

अपने gemfile में जोड़ें:

gem 'validates_email_format_of' 

और अपने मॉडल के: `द्वारा

validates_format_of :email, :with => /\A([^@\s]+)@((?:[-a-z0-9]+\.)+[a-z]{2,})\z/i 
+1

अच्छा उत्तर, धन्यवाद –

+1

आपके द्वारा प्रदान किया गया रेगेक्स काम नहीं कर रहा है:/ – Paladini

+1

केवल इसका उपयोग करें: 'with:/@ /' https: //davidcel.is/posts/stop-validating-email-addresses-with-regex/ –

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