मैं एक सामान्य उद्देश्य स्ट्रिंग मैनिपुलेशन क्लास बनाना चाहता हूं जिसका उपयोग मेरे रेल अनुप्रयोग में मॉडल, दृश्य और नियंत्रकों में किया जा सकता है।रेल: मेरी lib निर्देशिका में मॉड्यूल तक नहीं पहुंच सकता
अभी, मैं अपनी lib निर्देशिका में मॉड्यूल डालने का प्रयास कर रहा हूं और मैं इसे परीक्षण करने के लिए रेल कंसोल में फ़ंक्शन तक पहुंचने का प्रयास कर रहा हूं। मैंने इसी तरह के सवालों से कई तकनीकों की कोशिश की है, लेकिन मैं इसे काम नहीं कर सकता।
मेरी lib/filenames.rb फ़ाइल में:
module Filenames
def sanitize_filename(filename)
# Replace any non-letter or non-number character with a space
filename.gsub!(/[^A-Za-z0-9]+/, ' ')
#remove spaces from beginning and end
filename.strip!
#replaces spaces with hyphens
filename.gsub!(/\ +/, '-')
end
module_function :sanitize_filename
end
जब मैं sanitize_filename ("कुछ स्ट्रिंग") कॉल करने का प्रयास करें, मैं एक कोई विधि त्रुटि मिलती है। जब मैं Filenames.sanitize_filename ("कुछ स्ट्रिंग") को कॉल करने का प्रयास करता हूं, तो मुझे एक अनियमित स्थिर त्रुटि मिलती है। और जब मैं '/ lib/filenames' को शामिल करने का प्रयास करता हूं तो मुझे एक लोड त्रुटि मिलती है।
क्या यह ऐसी विधि बनाने का सबसे पारंपरिक तरीका है जिसे मैं कहीं भी एक्सेस कर सकता हूं? क्या मुझे इसके बजाय कक्षा बनाना चाहिए?
मैं इसे कैसे काम कर सकता हूं? :)
धन्यवाद!
संभवतः डुप्लिकेट [रेल में ओओ डिजाइन: कहां रखना है] (http://stackoverflow.com/questions/1068558/oo-design-in-rails-where-to-put-stuff) –
या संभव डुप्लिकेट [रेल 3 में lib फ़ोल्डर से मॉड्यूल क्लास लोड करने का सबसे अच्छा तरीका] (http://stackoverflow.com/questions/3356742/best-way-to-load-module-class-from-lib-folder-in-rails- 3) – RyanWilcox