जब भी मैं फ़ंक्शन का उपयोग करने का प्रयास करता हूं तो मुझे एक त्रुटि मिलती है जो रेक रेक के भीतर होती है। क्या यह काम करने का कोई तरीका है?मैं रेक कार्य पर "होट" का उपयोग कैसे करूं?
त्रुटि कहते हैं, "ऐसी कोई फ़ाइल या निर्देशिका - (रेक कार्य नाम)"
जब भी मैं फ़ंक्शन का उपयोग करने का प्रयास करता हूं तो मुझे एक त्रुटि मिलती है जो रेक रेक के भीतर होती है। क्या यह काम करने का कोई तरीका है?मैं रेक कार्य पर "होट" का उपयोग कैसे करूं?
त्रुटि कहते हैं, "ऐसी कोई फ़ाइल या निर्देशिका - (रेक कार्य नाम)"
समस्या यह है कि Kernel#gets
(यदि आप केवल gets
का उपयोग करते हैं तो आप जो कॉल कर रहे हैं) मान लीजिए कि आप रेक में दिए गए तर्कों द्वारा नामित फ़ाइल से खींच रहे हैं। इसका मतलब है कि gets
[रेक-टास्क-यहां] नामक फ़ाइल की सामग्री को वापस करने का प्रयास करता है, जो लगभग निश्चित रूप से मौजूद नहीं है।
STDIN.gets
आज़माएं।
यही वह है! पूरी तरह से – debbie
मुझे नहीं लगता कि यह है कि आप एक रेक कार्य में हो जाता है का उपयोग कर, यदि आप आदेश से इनपुट प्राप्त करने की आवश्यकता होना चाहिए लाइन आपको शायद इसे पैरामीटर के रूप में पास करनी चाहिए, लेकिन यदि आप कुछ कोड पोस्ट करते हैं जो काम नहीं कर रहा है तो मुझे यकीन है कि आपको एक बेहतर जवाब मिलेगा।
सामान्य रूप से, कमांड लाइन तर्क _are_ एक बेहतर विकल्प है, लेकिन रेक रेक के भीतर उपयोग करने के लिए बहुत अच्छे कारण हैं। उनमें से ज्यादातर को प्रमाणीकरण या सत्यापन के साथ करना है कि आप वास्तव में ऐसा करना चाहते हैं जो आप करते हैं। ("उत्पादन कोड तैनात करें") –
त्रुटि संदेश बहुत आत्म व्याख्यात्मक लगता है ... –
ऐसा प्रतीत हो सकता है, लेकिन ऐसा नहीं है। नीचे मेरा जवाब देखें। कर्नेल # हो जाता है और STDIN.gets के बीच के अंतर के बारे में काफी भ्रम है। –