2010-11-06 51 views
0

我使用回形针,其具有以下配置的/config/s3.yml文件:S3.YML - 访问一个变量?基于当前的Env?

common: &common 
    access_key_id: XXXXXXXXXX 
    secret_access_key: XXXXXXXXXXXXXXXXXXXX 

development: 
    <<: *common 
    bucket: myapp-local-dev 

test: 
    <<: *common 
    bucket: myapp-123-test 

production: 
    <<: *common 
    bucket: myappname-313-production 

在我看来,我想动态能够做这样的事情:

<img src="http://s3.amazonaws.com/myapp-local-dev/1/photos/15/1/thumb/Logo%20Design%20by%20kuda-1.jpeg" /> 

<img src="http://s3.amazonaws.com/myappname-313-production/1/photos/15/1/thumb/Logo%20Design%20by%20kuda-1.jpeg" /> 

不知何故,知道当前的环境,然后获取存储桶的名称。可能?感谢

回答

2

YAML.load_file("#{Rails.root}/config/s3.yml")[Rails.env]["bucket"]

应该做的伎俩,如果你只是想要回桶名称。

如果您在aws/s3中使用Paperclip,则应该自动处理。

所以:

<%= image_tag @my_obj.image.url %> 应该返回所需的URL,无论环境

希望帮助的?