मैं सोच रहा था कि किसी को "सामान्य" तरीका बनाने के बजाय, एक सहायक विधि बनाने के लिए एक नियंत्रक के अंदर helper_method का उपयोग क्यों करना चाहिए, जो सहायक फ़ाइल के अंदर है। उस के पेशेवरों और विपक्ष क्या हैं?नियंत्रक helper_method
उत्तर
helper_method
उपयोगी है जब कार्यक्षमता कुछ ऐसा है जो नियंत्रक और दृश्य दोनों के बीच उपयोग किया जाता है। एक अच्छा उदाहरण current_user
जैसा कुछ है।
यदि विधि नियंत्रक तर्क के साथ अधिक काम करता है और प्रारूपण नहीं करता है तो यह नियंत्रक में आता है। current_user
जैसे कुछ सभी नियंत्रकों के बीच साझा किए जाएंगे, इसलिए इसे ApplicationController
में परिभाषित किया जाना चाहिए।
सही "सहायक" विधियां दृश्य के साथ सौदा करती हैं और फ़ॉर्मेटिंग और टेम्पलेट तर्क जैसी चीजों को संभालती हैं। इन्हें कंट्रोलर में शायद ही कभी जरूरी है और वे ऐप/हेल्पर्स के तहत अपने मॉड्यूल में हैं। आवश्यकता होने पर आप इन्हें अपने नियंत्रक में शामिल कर सकते हैं, लेकिन आप अपने नियंत्रक के लिए उपलब्ध संपूर्ण सहायक मॉड्यूल के संपूर्ण मॉड्यूल के साथ समाप्त हो जाते हैं।
नियंत्रक के बीच तरीकों को साझा करने और देखने के लिए आप कई विकल्प हैं:
- उपयोग view_context http://apidock.com/rails/AbstractController/Rendering/view_context
- नियंत्रक में परिभाषित और helper_method वर्ग विधि से ध्यान में रखते हुए उपलब्ध बनाने http://apidock.com/rails/ActionController/Helpers/ClassMethods/helper_method
- में परिभाषित एक साझा मॉड्यूल और शामिल/विस्तार
- 1. helper_method से आंशिक प्रस्तुत
- 2. सहायक और helper_method क्या करते हैं?
- 3. नियंत्रक में मेरी सहायक विधियां
- 4. रेल नियंत्रक बिना नियंत्रक
- 5. वेबएपी नियंत्रक नियंत्रक
- 6. नियंत्रक 0 नियंत्रक
- 7. नियंत्रक
- 8. नियंत्रक
- 9. नियंत्रक
- 10. नियंत्रक
- 11. नियंत्रक
- 12. नियंत्रक
- 13. नियंत्रक
- 14. नियंत्रक
- 15. नियंत्रक
- 16. नियंत्रक
- 17. नियंत्रक
- 18. नियंत्रक
- 19. नियंत्रक
- 20. उप नियंत्रक को मुख्य नियंत्रक
- 21. "अपरिभाषित विधि" जब रेल में नियंत्रक से सहायक विधि बुला
- 22. जेडएफ 2 नियंत्रक का उपयोग नियंत्रक
- 23. मिक्स वेब एपीआई नियंत्रक और साइट नियंत्रक
- 24. फॉरवर्ड नियंत्रक
- 25. कार्य नियंत्रक
- 26. रेल नियंत्रक
- 27. एक नियंत्रक
- 28. रेल नियंत्रक
- 29. आवेदन नियंत्रक
- 30. zit2 नियंत्रक