不识别rails中S3.yml中的ENV变量

我目前正在尝试使用最新的aws-sdk建议的gem配置Paperclip。

在我的S3.yml文件中,我有类似的东西

 development: bucket: newmeeter-dev access_key_id: ENV['S3_KEY'] secret_access_key: ENV['S3_SECRET'] 

但它没有识别ENV变量。 我收到以下错误

 AWS::S3::Errors::InvalidAccessKeyId in PhotosController#create The AWS Access Key Id you provided does not exist in our records. 

如果我尝试将访问和秘密直接放入文件中,它就能完美地运行。 同时我尝试将两个ENV变量打印到视图中或在控制台中我可以看到它们的值可以。

我不知道它为什么不承认它。

解决了!

我在Ruby on Rails中找到了对这个问题的回复:你能把Ruby代码放在YAML配置文件中吗?

解决方案:YAML文件以ERB格式理解代码。

打印<%=%> ENV变量有效。

 access_key_id: <%= ENV['S3_KEY'] %> secret_access_key: <%= ENV['S3_SECRET'] %>