0

好的,所以我正在尝试让 Refinerycms 与 Heroku 合作,而我对这一切都是新手。我已经设置了一个 amazon s3 帐户并将密钥和 ID 添加到 amazon_s3.yml 文件中。

在 gart.heroku.com 在 Heroku 上启动时,我收到以下错误:

应用程序无法启动

/disk1/home/slugs/141557_e8490b3_d5eb/mnt/vendor/plugins/attachment_fu/lib/technoweenie/attachment_fu/backends/s3_backend.rb:187:in read': No such file or directory - /disk1/home/slugs/141557_e8490b3_d5eb/mnt/config/amazon_s3.yml (Errno::ENOENT) from /disk1/home/slugs/141557_e8490b3_d5eb/mnt/vendor/plugins/attachment_fu/lib/technoweenie/attachment_fu/backends/s3_backend.rb:187:inincluded' 来自 /disk1/home/slugs/141557_e8490b3_d5eb/mnt/vendor/plugins/ attachment_fu/lib/technoweenie/attachment_fu.rb:123:in include' from /disk1/home/slugs/141557_e8490b3_d5eb/mnt/vendor/plugins/attachment_fu/lib/technoweenie/attachment_fu.rb:123:inhas_attachment' 来自 /disk1/home/slugs/141557_e8490b3_d5eb/mnt/app/models/image.rb:13 来自 /usr/local/lib/ruby/site_ruby/1.8/ rubygems/custom_require.rb:31:in gem_original_require' from /usr/local/lib/ruby/site_ruby/1.8/rubygems/custom_require.rb:31:inrequire' 来自 /usr/local/lib/ruby/gems/1.8/gems/activesupport-2.3.5/lib/active_support/dependencies.rb:158:in require' from /usr/local/lib/ruby/gems/1.8/gems/activesupport-2.3.5/lib/active_support/dependencies.rb:265:inrequire_or_load' ... 42级别...来自 /usr/local/lib/ruby/gems/1.8/gems/rack-1.0.1/lib/rack/builder.rb:29:in instance_eval' from /usr/local/lib/ruby/gems/1.8/gems/rack-1.0.1/lib/rack/builder.rb:29:ininitialize' 来自 /home/heroku_rack/heroku.ru:1 :in 来自/home/heroku_rack/heroku.ru:1 的“新”

s3_backend.rb 第 187 行包含:

@@s3_config = @@s3_config = YAML.load(ERB.new(File.read(@@s3_config_path)).result)[RAILS_ENV].symbolize_keys

任何帮助都会很棒!

4

1 回答 1

0

首先检查您的amazon_s3.yml文件是否已签入到 git,如果是,那么您可以尝试以某种方式手动指定位置。如果 s3_backend.rb 中的类有设置路径的方法,你可以这样做:

S3Backend.s3_config_path = #{RAILS_ROOT}/config/amazon_s3.yml"

我建议将其放入初始化程序中。

于 2010-03-03T15:30:33.437 回答