2010-10-20 7 views
6

मुझे रेल (2.3) ऐप में मेलिंग पतों को इकट्ठा करने और स्टोर करने की आवश्यकता है। मेलिंग पते करने के लिए कोई रेल रास्ता है? उदाहरण के लिए, मैं दिनांकों को संभालने के लिए ड्रॉपडाउन की श्रृंखला उत्पन्न करने के लिए f.date_select करता हूं, जिसे डेटाबेस में संग्रहीत किया जाता है, जिसे मैंने स्कीमा और माइग्रेशन में t.datetime "foo" के रूप में परिभाषित किया है। मैं मानता हूं कि कैनोलिक रेल मार्गों को संभालने का तरीका है, और भौतिक पते, डाक कोड इत्यादि के लिए एनालॉग होने पर उत्सुक हूं।शारीरिक या मेलिंग पते एकत्र करने और संग्रहीत करने के लिए कैनोलिक रेल मार्ग क्या है?

+0

बहुत बुरा यह अभी भी एक अच्छा मणि नहीं है। –

उत्तर

6

इसके लिए कोई सेट सिस्टम या सहायक नहीं है, क्योंकि दिनांक पिकर के विपरीत, जो इससे अधिक जटिल है, पता जानकारी एकत्र करना बहुत सरल है। हालांकि, अगर आपको अपने ऐप में पता जानकारी एकत्र करने की आवश्यकता है और इसे एक से अधिक चीज़ों से जोड़ना है, तो आप पॉलिमॉर्फिक एसोसिएशन, नेस्टेड विशेषताओं और साझा दृश्य के संयोजन का उपयोग कर सकते हैं।

मैं अपने ब्लॉग पोस्ट यहाँ में एक बुनियादी उदाहरण और पूर्ण विवरण दे:

http://kconrails.com/2010/10/19/common-addresses-using-polymorphism-and-nested-attributes-in-rails/

यह पहली बार कठिन लग सकता है, लेकिन यह वास्तव में बहुत सरल है। लाभ यह है कि आपके पते में आपके पते सभी दृश्यों में समान हैं। और किसी पते वाले प्रत्येक ऑब्जेक्ट में सटीक एक ही सेटअप होता है, भले ही आप भविष्य में पते बदलते हैं।

मुझे लगता है कि यह अंततः आप जो खोज रहे थे वह है। मुझे उम्मीद है यह मदद करेगा!

+0

यदि आप स्थान डेटा के साथ मॉडल को जोड़ने की योजना बना रहे हैं, तो [geocoder] (https://github.com/alexreisner/geocoder) मणि इसे काफी अच्छी तरह से संभालता है। – Archonic

+0

+1! यह ब्लॉग पोस्ट मेरे लिए वास्तव में सहायक था, और पढ़ने में आसान था। इसे लिखने और इसे बनाए रखने के लिए धन्यवाद! मैं रेल दस्तावेज़ों के माध्यम से बहुलक व्यवहार स्थापित नहीं कर सका लेकिन यह मुझे रोलिंग मिला। –

2

सं। पता, डाक कोड, आदि ... को केवल स्ट्रिंग/पूर्णांकों। इन वस्तुओं के लिए मानचित्र करने के लिए कोई डेटाबेस विशिष्ट प्रकार नहीं है और इन वस्तुओं के लिए कोई रेल विशिष्ट वर्ग नहीं है।

मैं मेलिंग पते के लिए किसी भी ActiveSupport (लाइब्रेरी प्रयुक्त बी रेल) ​​समर्थन से भी अपरिचित हूं, लेकिन मैं यहां गलत हो सकता हूं।

यदि आप उन रत्नों की खोज करते हैं जो आपको मिल सकती हैं, तो यह संभव है कि इन वस्तुओं के साथ परिचालन आसान हो।

1

मैंने इसे देखना शुरू कर दिया है - पते अंतरराष्ट्रीय स्तर पर सीधा नहीं हैं। अब तक मुझे कुछ रत्न मिले हैं:

यहां तक ​​कि अगर आप इन रत्नों में से किसी का उपयोग नहीं कर अंत, यह देखने के लायक हो सकता है कि वे पते के विभिन्न हिस्सों को कैसे स्टोर करते हैं। आम सहमति है कि एक पॉलिमॉर्फिक एड्रेस टेबल हो, लेकिन इसमें कुछ बदलाव हैं जिनके लिए आपको कॉलम चाहिए।

यह लेख, अलग अलग तरीकों से आप संभाल कर सकते हैं फार्म के रूप में विशिष्ट या सामान्य आप देशों में जरूरत के रूप में होने के लिए के कुछ उदाहरण प्रदान करता है विसंगतियों के कुछ आप (यहां तक ​​कि किसी भी देश के अंदर) के विभिन्न क्षेत्रों में सामना कर सकते हैं उल्लेख है: http://www.uxmatters.com/mt/archives/2008/06/international-address-fields-in-web-forms.php

उदाहरण के लिए, आप ज़िप/पोस्टल कोड को एक आवश्यक फ़ील्ड नहीं बनाना चाहते हैं, क्योंकि सभी देशों में एक नहीं है। आप कितना जटिल जाना चाहते हैं, इस पर निर्भर करते हुए, आप देश से पहले पूछना चाहेंगे, और उस प्रश्न के उत्तर के आधार पर अलग-अलग रूप हैं।विशेष रूप से पता पंक्ति 1 और पता पंक्ति 2 फ़ील्ड के संबंध में, अस्पष्टता से बचने के लिए एक अच्छी ब्लॉग पोस्ट है: https://baymard.com/blog/address-line-2

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

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