0

将我的访问密钥 ID/秘密访问密钥直接发布到模型中是一种好习惯吗?例如...

has_attached_file :pic, :s3_credentials => { 
   :bucket => 'MY_BUCKET_NAME', 
   :path => ":rails_root/public/system/:attachment/:id/:style/:filename", 
   :url => "/system/:attachment/:id/:style/:filename", 
   :access_key_id => "12345Secret#blahblah", 
   :secret_access_key => "12345###" 
}

然而,这实际上有效,当我将图像复制到另一个模型时......它不会上传。

@other_user.pic = @user.pic(将图像复制给其他用户)

例如,如果有效的图像是:S3Amazon/pic/01.working.jpg

复制的图像在文件中增加了一个数字,如下所示:S3Amazon/pic/02.working.jpg

这张图片没有打开,整个星期都在寻找一种方法来完成这项工作。

4

1 回答 1

0

尝试

@other_user.pic = @user.pic
@other_user.save!

并确保,如果您是从控制台执行此操作,请@other_user.reload在检查 url 之前执行此操作

于 2014-01-04T00:55:06.250 回答