Я использую рельсы 3.2.1, несущая волна 0.5.8, туман 1.1.2, rmagick 2.13.1.carrierwave heroku - продолжайте получать сообщение об ошибке msg
Я пытаюсь загрузить фотографии продуктов на amazon s3, но я продолжаю получать это сообщение об ошибке независимо от того, какая перестановка файла инициализации carrierwave.rb, который я нахожу в Интернете (и я думаю, что я пробовал их все), никто, похоже, не работает. Ничто не загружается в мой ведро S3. Я получаю ту же ошибку msg для других версий, которые я пробовал. Я думаю, что это может быть что-то в моем контроллере, но не уверен, что может его отключить. ПОЖАЛУЙСТА ПОМОГИ!
ошибка сбщ из Heroku входа:
2012-03-05T06:35:18+00:00 app[web.1]: app/controllers/products_controller.rb:40:in `update'
2012-03-05T06:35:18+00:00 app[web.1]: ArgumentError (Missing required arguments: aws_access_key_id, aws_secret_access_key):
2012-03-05T06:35:18+00:00 app[web.1]: cache: [POST /products/3] invalidate, pass
carrierwave инициализатор
CarrierWave.configure do |config|
if Rails.env.production?
config.storage = :fog
config.fog_credentials = {
:provider => 'AWS',
:aws_access_key_id => 'access_key',
:aws_secret_access_key => 'secret_access_key',
:region => 'us-east-1'
}
config.fog_directory = 'bucket_name'
config.fog_public = true
config.fog_attributes = {'Cache-Control' => 'max-age=315576000'}
else
#for development and testing locally
config.storage = :file
config.enable_processing = false
end
end
image_uploader
include CarrierWave::RMagick
def store_dir
"uploads/#{model.class.to_s.underscore}/#{mounted_as}/#{model.id}"
end
version :thumb_pic do
process :resize_to_limit => [170, 170]
end
end
контроллер
def create
@all_categories = get_all_categories
checked_categories = get_categories_from(params[:categories])
removed_categories = @all_categories - checked_categories
@product = Product.new(params[:product])
if @product.save
checked_categories.each {|cat| @product.categories << cat if [email protected]?(cat)}
removed_categories.each {|cat| @product.categories.delete(cat) if @product.categories.include?(cat)}
redirect_to(:action => 'list')
else
render "new"
end
end
Это то, что я вижу, когда я проверил Heroku конфигурации
DATABASE_URL => .....
GEM_PATH => vendor/bundle/ruby/1.9.1
LANG => en_US.UTF-8
PATH => bin:vendor/bundle/ruby/1.9.1/bin:/usr/local/bin:/usr/bin:/bin
RACK_ENV => production
RAILS_ENV => production
S3_BUCKET => bucket_name
S3_KEY => access_key
S3_SECRET => secret_access_key
SHARED_DATABASE_URL => .....
Я провел хорошие два дня на это уже и ничего.
У меня возникают аналогичные проблемы с развертыванием несущей, aws и heroku. Работы находят локально, но не могут загружаться при развертывании. Не могли бы вы отредактировать и добавить, что именно выглядит ваш файл 'config/initializers/carrierwave.rb'? Это может привести меня в порядок. – BenU