2013-01-06 45 views
14

में मैं अपने रेल ऐप के साथ हेरोकू और एस 3 का उपयोग कर रहा हूं। मेरे पास केवल उत्पादन मोड में स्थापित धुंध मणि है क्योंकि मेरा स्थानीय कंप्यूटर जंक का एक टुकड़ा है। वैसे भी, यह इस तरह से ठीक काम करता है और स्थानीय स्तर पर कोहरे को स्थापित करने के लिए अपने बालों को खींचने से बेहतर समाधान साबित हुआ है, लेकिन अब मुझे अपलोडर फ़ाइल को स्थानीयहोस्ट का उपयोग करने के लिए स्विच करना है और फिर प्रतिबद्धता बनाने के लिए इसे वापस स्विच करना है।कैरियरवेव के साथ कोहरे का उपयोग केवल उत्पादन

स्थानीय रूप से फ़ाइल का उपयोग करने में सक्षम होना अच्छा होगा और फिर मैन्युअल रूप से पीछे और पीछे स्विच किए बिना उत्पादन मोड में धुंधला होना अच्छा होगा। क्या किसी को यह करने के बारे में कोई सुझाव है?

बहुत पहले से धन्यवाद।

उत्तर

47

यह बहुत आसान है। आपको इसे कॉन्फ़िगरेशन फ़ाइल में परिभाषित करना होगा। लेकिन अपने मॉडलों में स्टोरेज को परिभाषित न करें क्योंकि यह कॉन्फ़िगरेशन फ़ाइल से सेटिंग्स को ओवरराइड करेगा।

# sample config/initializers/carrierwave.rb 
CarrierWave.configure do |config| 

    if Rails.env.development? || Rails.env.test? 
    config.storage = :file 
    else 
    config.fog_credentials = { 
     :provider    => 'AWS', 
     :aws_access_key_id  => 'some_access_key_id', 
     :aws_secret_access_key => 'some_secret_key', 
     :region     => 'eu-west-1' 
    } 
    config.storage = :fog 
    config.fog_directory = 'bucket_name' 
    end 
end 
+2

मैं कल आपको धन्यवाद देना भूल गया। एक जादू की तरह काम किया। – spitfire109

+0

कृपया प्रश्न को हल के रूप में चिह्नित करें। – Fa11enAngel

+0

कैरियरवेव के वर्तमान संस्करण में आपको 'config.fog_credentials' के बाद 'config.storage' रखना होगा' – joseramonc