रेल में, क्या यह फॉर्म हेल्पर्स का उपयोग करने की अनुशंसा की जाती है? आंतरिक रूप से, सबकुछ सादे एचटीएमएल पर उबाल जाता है तो एचटीएमएल सीधे क्यों नहीं लिखते? समर्थकों का उपयोग करने से प्रत्यक्ष एचटीएमएल लिखने में प्रदर्शन स्पष्ट रूप से बेहतर होगा। क्या फॉर्म हेल्पर्स का उपयोग एक सम्मेलन या कुछ ऐसा है जो रेल डेवलपर्स का पालन करना चाहिए?रेल में, फॉर्म हेल्पर्स का उपयोग करना है या नहीं?
उत्तर
प्रदर्शन परिभाषित करें। आपका प्रदर्शन या अनुप्रयोग? मान लें कि आपके पास अपने विचारों में एक ही rhtml स्निपेट फैल गया है। मान लें कि आपके पास हजारों स्थानों पर है। हो सकता है कि आपने इसे बिल्कुल सभी स्थानों पर भी प्राप्त नहीं किया है। अब आपका ग्राहक इसे बदलना चाहता है (शायद प्रस्तुति के अलग-अलग क्रम या कुछ ऐसे)। यह आपको सभी विचारों में करने में कुछ समय लगेगा, है ना? और संभावना है कि आप पहली बार सही नहीं पाएंगे। संभावनाएं वास्तव में हैं कि आप उन स्थानों पर आने वाले वर्षों के लिए बग रिपोर्ट प्राप्त करना जारी रखेंगे जिन्हें आप बदलना चाहते हैं।
ग्राहक "प्राप्त" प्राप्त करने के लिए बहुत कुछ चुकाएगा। शायद सैकड़ों कामकाजी घंटे। यदि आप सिद्धांत पर डीआरवाई सिद्धांत से बचते हैं तो शायद हजारों लोग। उन सभी सर्वरों और उन सभी रैम के बारे में सोचें जो वह उन कार्य घंटों के लिए खरीद सकती थीं। अगर उसने इसे हार्डवेयर पर बिताया तो उसका आवेदन सौ गुना तेजी से चला सकता है। उन सभी मजेदार चीजों के बारे में सोचें जो आप एचटीएमएल स्निपेट को बदलने के बजाय बंदरगाह के बजाय काम कर सकते हैं।
मुझे लगता है कि फॉर्म हेल्पर्स DRY का एक प्रतिबिंब है (स्वयं को दोहराएं) सिद्धांत। समान कार्य करने के लिए एक ही कोड लिखने के बजाय, एक फॉर्म हेल्पर बनाना जो आपको उस कोड का पुन: उपयोग करने की अनुमति देता है। इस तरह यदि आपको कोई बदलाव या फिक्स करने की ज़रूरत है, तो आपको केवल एक ही स्थान पर ऐसा करने की आवश्यकता है। यह आपके कोड को अधिक कॉम्पैक्ट बनाने और एक जटिल सहायक क्रिया को एक फॉर्म सहायक में पढ़ने में भी मदद करता है। आंशिक विचारों के बारे में भी यही सच है, हालांकि आंशिक विचार एक फॉर्म सहायक से अधिक जटिल चिह्न को समाहित करते हैं।
फॉर्म हेल्पर्स विशेष रूप से उपयोगी हैं जो रेल मॉडल को आपके मॉडल के आधार पर फ़ॉर्म बनाने में मदद करते हैं।
निम्नलिखित कोड
<% form_for :person, @person, :url => { :action => "create" } do |f| %>
<%= f.text_field :first_name %>
<%= f.text_field :last_name %>
<%= submit_tag 'Create' %>
<% end %>
इस एचटीएमएल उत्पन्न
<form action="/persons/create" method="post">
<input id="person_first_name" name="person[first_name]" size="30" type="text" />
<input id="person_last_name" name="person[last_name]" size="30" type="text" />
<input name="commit" type="submit" value="Create" />
</form>
आप खुद एचटीएमएल लिख सकता है, लेकिन आप के लिए है प्रपत्र सहायकों का उपयोग करके: एपीआई प्रलेखन के उदाहरण का हवाला देते हैं करने के लिए कम टाइप करें और फॉर्म निर्माण को रेल कार्यान्वयन पर कम निर्भर करें। जब आप सबमिट बटन दबाते हैं तो आपको हमेशा एक ऐसा फॉर्म मिलता है जो आपके मॉडल में डेटा लिखता है। यदि रेल डेवलपर्स कभी भी इसके कार्यान्वयन को बदलते हैं, तो आप स्वचालित रूप से अपने हेल्पर्स से सही HTML आउटपुट प्राप्त करते हैं। यदि आपने मैन्युअल रूप से HTML लिखा था, तो आपको रेल के आंतरिक कार्यों के परिवर्तनों को दर्शाने के लिए इसे सभी अपडेट करना होगा।
निष्पादित करने के लिए धन्यवाद देना चाहिए। हालांकि, मैं जानना चाहता हूं कि प्रदर्शन सहायता से फॉर्म हेल्पर्स का उपयोग करना कितना बुरा है? – Chirantan
इसका अच्छा जब एक डेवलपर वर्ग, आईडी के लिए एक ही नाम और एक इनपुट क्षेत्र के लिए कोई मूल्य नहीं होने अगर वह अलग नाम आईडी की जरूरत है और यह भी मूल्य दे रही है तो वह <% = text_field_tag "नाम" लिखने के लिए है, लगता है: मूल्य => "मान",: id => "id",: class => "" वर्ग%> और उसी HTML के लिए < इनपुट प्रकार = "टेक्स्ट" मान = "मान" वर्ग = "वर्ग" नाम = "नाम" id = "आईडी" /> अब लगता है कि भूमि के ऊपर 1. एचटीएमएल 2. में पहली सहायक का मूल्यांकन अब भी सहायक में है कि की लंबाई हम भी लिखने के लिए है पर विचार करें:, => 3। कभी-कभी आप इसका उपयोग करना भूल जाते हैं: या, गलती से इसलिए मुझे लगता है कि हम उस मामले में एचटीएमएल पसंद करते हैं और एक बात यह है कि यदि आपका सर्वर उससे बहुत अधिक अनुरोध प्राप्त कर रहा है तो बहुत व्यस्त हो जाएगा और प्रतिक्रिया समय बढ़ जाएगा क्योंकि <% =% >
- 1. डायनामिक पाथ हेल्पर्स रेल
- 2. सीएमएस का उपयोग करना है या नहीं
- 3. रेल यूआरएल हेल्पर्स उचित प्रोटोकॉल का उपयोग करते हैं?
- 4. रेल कंसोल में डेट हेल्पर्स क्यों काम नहीं करते हैं?
- 5. आपको रेल ऐप में रीस्टफुल कंट्रोलर का उपयोग कब करना चाहिए, और आपको कब नहीं चाहिए?
- 6. एक फॉर्म का उपयोग कर रेल एसटीआई
- 7. रेल में नेस्टेड फॉर्म - has_many संबंध में विशेषता का उपयोग
- 8. हैम हेल्पर्स का उपयोग करना कि रिटर्न स्ट्रिंग्स
- 9. फॉर्म हेल्पर्स का उपयोग करके टैबिंडेक्स सेट करने के लिए स्वचालित विधि
- 10. सिंक्रनाइज़ेशन, कब उपयोग करना है या नहीं?
- 11. वर का उपयोग करना या वर का उपयोग नहीं कर
- 12. रेल में styleheet.css.erb का उपयोग करना संभव है?
- 13. हेल्पर्स में एचटीएमएल क्यों नहीं होना चाहिए?
- 14. रेल का उपयोग करने के लिए उबंटू 12.04 पर आरवीएम का उपयोग करना। कार्यक्रम 'रेल' वर्तमान में स्थापित नहीं है
- 15. एंड्रॉइड: ऐप बिलिंग में, लाइब्रेरी का उपयोग करना या नहीं?
- 16. ग्रिल्स में गेटर और सेटर्स का उपयोग करना या नहीं?
- 17. क्या विंडोज़ फॉर्म या डब्ल्यूपीएफ ऐप में "विंगडिंग्स" फोंट का उपयोग करना उचित है?
- 18. रेल का चयन_डेट फॉर्म नाम
- 19. निब फ़ाइलों का उपयोग करना चाहिए या नहीं करना चाहिए?
- 20. रेल 3 के साथ मॉडल में रूटिंग हेल्पर्स का उपयोग कैसे करें?
- 21. एएसपी एमवीसी एचटीएमएल हेल्पर्स - अच्छा या बुरा?
- 22. मैं कैपिबरा रूटिंग हेल्पर्स
- 23. बूटस्ट्रैप मॉडल में रेल फॉर्म
- 24. एम्बर हेल्पर्स (लिंक या आंशिक) में स्ट्रिंग चर का उपयोग कैसे करें?
- 25. क्या विंडोज़ फॉर्म पर डब्ल्यूपीएफ का उपयोग करना बेहतर है?
- 26. रेल अनुप्रयोग में मॉड्यूल का उपयोग मॉडल
- 27. रेल पेपरक्लिप, संपादन फॉर्म file_field नहीं सौंपा
- 28. मॉडलफॉर्मसेट फैक्ट्री में कस्टम फॉर्म का उपयोग करना?
- 29. मॉडल में हेल्पर्स का उपयोग करना: मैं सहायक निर्भरताओं को कैसे शामिल करूं?
- 30. चींटी का उपयोग करना, क्या टैग IF में AND, या स्थिति का उपयोग करना संभव है?
रेल और डीआरवाई के लाभों में से एक ऐसा है जैसा आप रेखांकित करते हैं, इसे इंगित करने के लिए धन्यवाद! प्रदर्शन गति को प्रस्तुत करने से कहीं अधिक है, यह विकास की गति भी है। –
महान तर्क। – Zequez