रेल के डोमेन मॉडल decoupling मैं विशेष रूप से जादू सेम विरोधी पैटर्न के आसपास "एसक्यूएल Antipatterns: डेटाबेस प्रोग्रामिंग से बचने" की किताब पढ़ रहा है। इसमें एक डोमेन मॉडल का उपयोग करके एक्ट्रैग डिकूप्लिंग एक्ट्रीक्रॉर्ड्स दिखाता है और इसमें PHP में उदाहरण है, लेकिन रेल नहीं है, यह इसे डोमेन मॉडल और विचार/नियंत्रकों और डोमेन मॉडलों और एक्टिव्रेकॉर्ड्स (I) के बीच एचएएस-ए संरचना के बीच एक समेकन के रूप में संदर्भित करता है। मान लें कि यह यूएमएल बोलता है)।Activerecord
रेल में यह मॉडल विधियों का उपयोग करके पतली नियंत्रक वसा मॉडल बनाने के लिए आम जगह प्रतीत होता है, ये विधियां अन्य संबंधित मॉडल में हेरफेर कर सकती हैं ताकि किसी भी नियंत्रक में केवल एक मॉडल का उपयोग किया जा सके। हालांकि, मुझे आश्चर्य है कि क्या कोई अभ्यास है जिसमें रेल में कुल decoupling शामिल है?
अर्थात, एक टेबललेस मॉडल या अन्य वर्ग बनाने के लिए एक डोमेन मॉडल के रूप में उपयोग करने के लिए नियंत्रकों और एक्टिव्रेकॉर्ड ऑब्जेक्ट्स (जो बदले में टेबल पर मैप किए जाते हैं) के बीच एक परत के रूप में उपयोग किया जाता है ताकि नियंत्रकों के पास बेहतर अलगाव हो और न हो अंतर्निहित डेटाबेस और इसकी संरचना के बारे में कुछ भी जानने की जरूरत है। यह सीआरयूडी विधियों से दूर जाने का विकल्प भी प्रदान करता है जो कि आवेदन में लागू होने वाली आवेदन आवश्यकताओं की व्याख्या नहीं करते हैं, पुस्तक में एक और आलोचना।
धन्यवाद इसने मुझे इस स्टैक ओवरफ्लो थ्रेड की दिशा में इंगित किया है http://stackoverflow.com/questions/2521522/are-view-models-used-in-rails और फिर बदले में जे फ़ील्ड जिन्होंने प्रस्तुति पैटन पर कुछ काम किया RailsConfEU 07 http://blog.jayfields.com/2007/09/railsconf-europe-07-presenter-links.html –
पर प्रस्तुत किया गया ... मुझे लगता है कि यह एक प्रस्तुतकर्ता पैटर्न या संबंधित रचनाओं और अन्य तर्कों के बीच टॉस अप करता है मॉडल जामिस बक्स पतली नियंत्रक वसा मॉडल पर स्पिन जो रेल दुनिया में आदर्श मानता है। मैं वास्तव में प्रस्तुतकर्ता पैटर्न पसंद करता हूं, मुझे लगता है कि यह क्लीनर कोड का उत्पादन कर सकता है। मैंने यह भी पाया है कि एक पुस्तक "एडवांस्ड रेल व्यंजनों" है जिसमें जेई फील्ड प्रस्तुतकर्ता पैटर्न के कार्यान्वयन शामिल हैं, मैं देखूंगा कि क्या मैं पुस्तकालय से एक प्रतिलिपि ढूंढ सकता हूं और उधार ले सकता हूं। मुझे आशा है कि किसी ने इस काम के आधार पर रेल जनरेटर को बढ़ा दिया है। –