2011-04-13 10 views
18

मेरे पास rails 3 मोड है जो देव मोड में है जो मेरे चल रहे वीब्रिक के दौरान किए गए किसी भी बदलाव को लोड नहीं करेगा। मैंने अपने development.rb के लिए सेटिंग की जांच की और सुनिश्चित किया कि मैं विकास मोड में चल रहा हूं।रेल 3 विकास पर्यावरण कैशिंग रखता है, कैशिंग के बिना भी?

config.cache_classes = false 
config.action_controller.perform_caching = false 

मैं भी यकीन है कि कैश फ़ोल्डर रिक्त है बनाने के लिए मेरी tmp निर्देशिका जाँच - मैं अभी तक साइट पर किसी भी कैशिंग क्या करना है और कैशिंग चालू नहीं किया है। मैं फ़ाइलों के साथ एक लोडिंग समस्या का अनुमान लगा रहा हूँ।

मैं भी webrick पर चल रहा था तो मैंग्रेल स्थापित किया गया और समस्या अभी भी बनी हुई है।

मैं अनुमान लगाता हूं कि एक कॉन्फ़िगरेशन समस्या में चलाया जाता है, बीसी मैं इस तरह की कोई समस्या पोस्ट करने वाले किसी और को नहीं देखता। कुछ और याद आ रही है?

संपादित करें: ऐसा लगता है कि मेरे व्यू हेल्पर्स ऑटो लोड करने योग्य नहीं हैं - डिफ़ॉल्ट रूप से मददगार नहीं हैं रेलवे 3 में पुनः लोड करने योग्य माना जाता है?

+2

आप अपने प्रोजेक्ट पर एसटीआई का उपयोग करते हैं;) – fl00r

+0

@ fl00r, मैं जानता हूँ कि मैं खेल यहाँ करने के लिए देर से एक छोटे से हूँ, लेकिन आप उस बिंदु पर विस्तार से बता सकता है? –

+0

यदि आप विकास में एसटीआई का उपयोग कर रहे हैं तो आपको ऑटोलोड (कैश) कक्षाएं या विरासत ठीक से काम नहीं करनी चाहिए – fl00r

उत्तर

4

मुझे एक समान अनुभव मिला है, लेकिन मुझे विश्वास नहीं है कि यह एक वास्तविक सहायक वर्ग के साथ था, यह lib/ निर्देशिका के तहत मैंने लिखा था। यदि आप एक require 'some_class' कथन का उपयोग करने के लिए मिला है, तो आप इसे करने के लिए स्विच करना चाहिए:

require_dependency 'some_class' 

मेरे लिए एक आकर्षण की तरह काम किया।

1

मैं जानता हूँ कि यह एक पुराने सवाल है, लेकिन एक समान मुद्दे के साथ यहाँ आने के लिए किसी को भी, सुनिश्चित करें कि आप गलती की तरह मैंने किया config/initializers/ करने के लिए config/environments/ से production.rb स्थानांतरित नहीं किया हो। इससे रेल को production.rb फ़ाइल में पढ़ा जाएगा और आपकी विकास सेटिंग्स को ओवरराइड कर देगा। ओह।

1

एक ही समस्या थी, यह रेल-देव-ट्वीक्स मणि के कारण हुई थी, यदि आप README से डिफ़ॉल्ट कॉन्फ़िगरेशन का उपयोग करते हैं, तो AJAX अनुरोधों पर स्टैक रीलोड अक्षम करना।

2

मुझे एक ही समस्या थी और यहां सरल समाधान है।
अपने config/environments/development.rb सेट निम्न सेटिंग्स में:

config.action_controller.perform_caching = false 
config.perform_caching = false 
config.cache_store = :null_store 
+0

यह मेरे लिए काम किया –

0

मैं रेल 4 का उपयोग कर रहा है, और अपने कैश कॉल एक सहायक में Rails.cache.fetch उपयोग कर रहा था।

थोड़ा googling के बाद, मैं इस मुद्दे (https://github.com/rails/rails/issues/20733), जहां एक पीआर रेल में विलय हो गया 5 प्रलेखन स्पष्ट कर दिया कि '

config.action_controller.perform_caching के मान में बदलाव बनाने के लिए होगा पता चला केवल एक्शन कंट्रोलर घटक द्वारा प्रदान की गई कैशिंग पर प्रभाव पड़ता है। उदाहरण के लिए, यह निम्न-स्तरीय कैशिंग को प्रभावित नहीं करेगा, कि हम नीचे पता।

',' low-level-caching 'Rails.cache.fetch होने के नाते।

यह अभी दस्तावेज़ पर है: http://guides.rubyonrails.org/caching_with_rails.html

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