2012-01-12 16 views
5

कभी-कभी, मेरे रेल अनुप्रयोग में त्रुटि होती है (लोड करने के लिए ऐसी कोई फ़ाइल नहीं - रैक) भले ही रैक स्थापित हो।लोड करने के लिए ऐसी कोई फ़ाइल नहीं - रैक

[Gemfile] मणि 'रैक', '1.2.1'

अगर मैं पेज को ताज़ा, यह ठीक लोड करता है। तो यह मणि समस्या नहीं है। त्रुटि का कारण क्या हो सकता है?

धन्यवाद।

सैम

उत्तर

4

मुझे लगता है कि यदि आप अपनी वेबसाइट स्थानीय स्तर पर शुरू करते हैं, यह नहीं होगा। तो आपने किस सेवा का उपयोग किया? मुझे DreamHost पर इस तरह की बग का सामना करना पड़ा है।

ड्रीमहोस्ट के लिए, समस्या यह है कि वे रैक के विभिन्न संस्करण (पुराने) का उपयोग करते हैं, जो रेल के नवीनतम संस्करण के साथ संगत नहीं है। अपने Gemfile में रैक संस्करण निर्दिष्ट करने का प्रयास करें (और ज्यादातर मामलों में, आपको रेल भी डाउनग्रेड करना होगा)। यह मदद कर सकता है।

एक और संभावित कारण यह है कि आप अपनी स्थानीय मशीन पर आरवीएम का उपयोग करते हैं, लेकिन उदाहरण के लिए, यात्री + Nginx/Apache, RVM अच्छी तरह से काम नहीं कर सकता है (असल में, मुझे हमेशा यात्री + आरवीएम का उपयोग करके त्रुटियां मिल रही हैं)। आपकी जेम निर्देशिका निर्दिष्ट करने से मदद मिल सकती है।

+1

आप बहुत सही हैं। मैं ड्रीमहोस्ट वीपीएस का उपयोग करता हूं। मेरा देव पर्यावरण आरवीएम है। एक और अजीब चीज यह है कि अगर मैं 'बंडल इंस्टॉल' करता हूं तो भी मेरे रेल ऐप ने मुझे "लोड करने के लिए ऐसी कोई फ़ाइल नहीं - रैक" दी है। मुझे मैन्युअल रूप से 'मणि इंस्टॉल रैक -v 1.2.1' करना है। यह मेरे 'बंडल इंस्टॉल - डिप्लॉयमेंट' से संबंधित हो सकता है। हालांकि मुझे यकीन नहीं है। –

+1

मैं Dreamhost VPS का उपयोग नहीं कर रहा हूं, लेकिन DreamHost साझा सर्वर। मुझे लगता है कि साझा सर्वर से वीपीएस अधिक बेहतर होगा। साझा सर्वर के लिए, मैंने इन पंक्तियों को config.ru में जोड़ने के लिए किया है: ENV ['GEM_HOME'] = "# {ENV ['HOME']} /। रत्न" ENV ['GEM_PATH'] = "# {ENV [ 'GEM_HOME']}:/usr/lib/ruby ​​/ gems/1.8 " 'rubygems' की आवश्यकता है Gem.clear_paths आप कोशिश कर सकते हैं। यह जेम पथ निर्दिष्ट करता है। – Davidsun

+0

हां। उस समस्या को ठीक किया। धन्यवाद। –

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