2010-11-22 10 views
5

मैं पिछले 2 महीनों में रेलों में गड़बड़ कर रहा हूं और अब तक सब कुछ ठीक चल रहा है - लेकिन एक ऐसा क्षेत्र है जहां मैं थोड़ा संदिग्ध हूं।रेल: विश्वसनीय संसाधन: उपयोग करने योग्य या अनावश्यक/अतिरंजित?

मैं रीस्टफुल रेल संसाधनों की खुशी के बारे में सुनता रहता हूं: अर्थात, कॉन्फ़िगरेशन/मार्गों में 'संसाधन: foo' और नियंत्रक में आपके 7 आरामपूर्ण कार्य हैं।

बहुत सरल चीजों को छोड़कर (उदाहरण के लिए 'जेनरेट जेनरेट' चलाकर 99% किया जाता है), मुझे लगता है कि कॉन्फ़िगर/रूट्स में यूआरएल से मेल खाने के बजाय उस दृष्टिकोण में मेरी परियोजना कार्यक्षमता को निचोड़ने का प्रयास करना कम सुविधाजनक है एक और आवश्यकतानुसार प्रत्येक कार्रवाई करते हैं।

लेकिन मुझे यह समझ में आ रहा है कि मैं गलत हूं, और यह कि सबसे चरम परिस्थितियों में, विश्वसनीय संसाधन जाने का रास्ता है।

तो:

(क) किसी को भी इस पर एक राय दे सकते हैं?

(बी) अनुभवी रेल लोगों के लिए, एक सामान्य परियोजना में आपके कितने% मार्ग हैं: संसाधन और क्या% कार्रवाई-दर-क्रिया कोडित हैं? चीयर्स ...

+0

यह एक व्यक्तिपरक प्रश्न है, और मुझे यकीन है कि इससे बड़ी बहस होगी :) – rmk

+0

सहमत हुए। तथ्य यह है कि सवाल में शामिल हैं "क्या कोई इस पर कोई राय दे सकता है?" परेशानी के लिए पूछ रहा है। – RPM1984

उत्तर

5

संसाधन सुविधाजनक हैं, लेकिन वे "एक आकार सभी फिट बैठता है" सुविधा नहीं हैं। कुछ चीजें सिर्फ 7 तरीकों से समझ में नहीं आती हैं।

ध्यान रखें कि you can:

  • :except साथ विशिष्ट विधियों को शामिल न करें।
  • :only के साथ केवल विशिष्ट विधियां शामिल करें।
  • संसाधन में अपनी खुद की विधियां जोड़ें।

तो वे उतना ही लचीला नहीं हैं जितना आप सोच सकते हैं। लेकिन अगर, उन 3 बिंदुओं को ध्यान में रखते हुए, संसाधन सिर्फ "सही महसूस नहीं करता", इसे छोड़ दें! आरईएसटी नियमित रूटिंग को प्रतिस्थापित करने के लिए कभी नहीं था, यह सिर्फ सबसे आम उपयोग मामले को दूर करने की कोशिश करता है।

यदि आप पूरी तरह से संसाधनों पर पूरी तरह से बाहर निकलते हैं, तो आप एक टन मुफ्त कार्यक्षमता खो देंगे। इसे बुद्धिमानी से प्रयोग करें और आप ठीक होंगे।

0

आम तौर पर मैं रीस्ट आर्किटेक्चर के साथ एक परियोजना शुरू करता हूं। मैं अपनी बुनियादी कार्यक्षमता इस तरह से तैयार करता हूं, लेकिन जैसा कि परियोजना/वेबसाइट प्रगति करता है, मैं अधिक से अधिक विचार लिखता हूं जो कि यथार्थवादी वास्तुकला में फिट नहीं होते हैं। विपणन साइटों और समांतर कार्यक्षमता इस के सही उदाहरण हैं।

यहाँ दृष्टिकोण पर एक लेख है:

http://ablogaboutcode.com/2010/11/22/to-be-or-not-to-be-restful-ruby-on-rails-best-practices/


प्रारंभ करने से पहले, यहाँ कुछ सवाल तुम अपने आप को पूछने के लिए चाहते हो सकता है कर रहे हैं:

  1. इस नियंत्रक करता है/मुख्य रूप से किसी ऑब्जेक्ट/इकाई जैसे पोस्ट, ब्लॉग के साथ सौदा देखें?
  2. वेब पर उपलब्ध होने, सभी अपडेट, अपडेट, डिलीट, संपादित और नए क्रियाएं उपलब्ध हैं?

एक दिशानिर्देश के रूप में, यदि आप इन दो सवालों का जवाब हाँ है, तो यह शायद सबसे अच्छा है बाकी के साथ शुरू और उम्मीद करते हैं कि आप अंत में अतिरिक्त कार्यों और विचारों आप को करने के लिए चाहते हो सकता है के लिए एक निर्माण खंड के रूप में वास्तुकला का उपयोग करेगा । अन्यथा, एक यूआरएल चुनें जो सबसे अच्छा प्रतिनिधित्व करता है कि कार्रवाई क्या दिखाएगी या करेगी (/ अभिलेखागार,/दौरा,/दिसम्बर-प्रस्ताव) और सुनिश्चित करें कि आप उचित HTTP प्रोटोकॉल का उपयोग करें (प्रदर्शन के लिए प्राप्त करें, अद्यतन के लिए PUT, हटाने और POSTTE के लिए हटाएं बनाने के लिए)।

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