पर सेट करने के लिए सेट किया गया है मैंने कैरियरवेव का उपयोग करना शुरू किया, और मुझे पता चला कि यह कई स्थानों पर अस्थायी फ़ाइलों को संग्रहीत करता है, चाहे वह परीक्षण या देरी हो रहा है या नहीं।कैरियरवेव अस्थायी निर्देशिका अपलोड/tmp फ़ोल्डर
यदि यह परीक्षण (आरएसपीईसी) के दौरान किया जाता है, तो अस्थायी फ़ाइलें RAILS_ROOT/uploads/tmp
निर्देशिका पर होंगी।
यह देरी काम के दौरान किया जाता है, अस्थायी फ़ाइलें हो जाएगा पर RAILS_ROOT/public/uploads/tmp
पहले, मैं सोच रहा था कि rails_root/tmp/uploads
एक अधिक समझदार जगह, या यहाँ तक कि प्रणाली अस्थायी फ़ोल्डर होगा।
दूसरा, सामान्य रन के लिए अलग-अलग परीक्षण एक बग जैसा लगता है।
क्या इसे ठीक करने का कोई तरीका है (या तो कॉन्फ़िगरेशन या बंदर पैचिंग द्वारा)? और क्या मैं चीजों को RAILS_ROOT/tmp फ़ोल्डर में डाल सकता हूं?
एक आकर्षण की तरह काम करता है। ध्यान दें कि इस पर प्रभाव डालने के लिए आपको अपने आवेदन को पुनरारंभ करना होगा। –
मैंने कक्षा में 'attr_writer cache_dir' भी जोड़ा और फ़ंक्शन को '@cache_dir में बदल दिया || Rails.root.join 'tmp/uploads' प्रति-उदाहरण ओवरराइड (विकास फ़ाइलों से परीक्षण फ़ाइलों को अलग करने के लिए उपयोगी) की अनुमति देने के लिए। – Leo
cache_dir और store_dir के बीच क्या अंतर है? – Jwan622