2012-10-24 18 views
14

जब मैं अपने आवेदन को चलाने के लिए कोशिश कर रहा हूँ, मैं निम्नलिखित त्रुटि हो रही है:अपरिभाषित विधि `fog_host = '

CarrierWave.configure do |config| 
    config.storage = :fog 
    config.fog_directory = 'media.domain.pl' 
    config.fog_host = 'http://s3-eu-west-1.amazonaws.com/media.domain.pl' 

    config.fog_credentials = { 
    :provider => 'AWS', 
    :aws_access_key_id => '***', 
    :aws_secret_access_key => '***', 
    :region => 'eu-west-1', 
    } 
end 
:

config/initializers/carrierwave.rb:4: undefined method `fog_host=' for CarrierWave::Uploader::Base:Class (NoMethodError)

यहाँ मेरी initializers/carrierwave.rb फ़ाइल है

मेरे पास carrierwave और fog मेरे Gemfile में शामिल है और यह bundle update के अंतिम उपयोग तक काम कर रहा था। क्या आपको पता है कि मेरे कोड में क्या गलत हो सकता है? मैं गूगल

में इसके बारे में कुछ नहीं मिल सकता है

माणिक v। 1.8.7
रेल v। 3.2.6
कोहरे v। 1.6.0
carrierwave v। 0.7.0

उत्तर

39

fog_host नहीं करता है एक विन्यास विकल्प प्रतीत नहीं होता है।

CarrierWave.configure do |config| 
    config.fog_credentials = { 
    :provider    => 'AWS',  # required 
    :aws_access_key_id  => 'xxx',  # required 
    :aws_secret_access_key => 'yyy',  # required 
    :region     => 'eu-west-1' # optional, defaults to 'us-east-1' 
    } 
    config.fog_directory = 'name_of_directory'      # required 
    config.fog_public  = false         # optional, defaults to true 
    config.fog_attributes = {'Cache-Control'=>'max-age=315576000'} # optional, defaults to {} 
    config.asset_host  = 'https://assets.example.com'   # optional, defaults to nil 
end 

अपडेट:: Carrier wave डॉक्स से ऐसा लगता है जैसे आप asset_host बजाय आवश्यकता हो सकती है लग रहा है

यहाँ प्रतिबद्ध है कि कि बदलाव की शुरुआत की है: https://github.com/jnicklas/carrierwave/commit/7046c93d6b23cffef9f171a5f7f0dd14267a7057

+0

हाँ, यह है कि यह किया गया था। धन्यवाद :) – mbajur

+2

StackOverFlow एक खजाना है। नई समस्या के लिए ताजा जवाब। धन्यवाद @ बेरलिंगटन –

+2

मेरे भगवान इसके लिए धन्यवाद! मैंने पाया कि सभी दस्तावेज 'fog_host' का उपयोग किया गया था, मुझे छवियों के https यूआरएल को बंद करने के लिए अपने सेटअप में 'assets_host' सेट करने की आवश्यकता थी ताकि वे सामान्य http पर देख सकें। एक बार फिर धन्यवाद! – FireDragon

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