回形针上的Paperclip AWS :: S3 :: Errors :: NoSuchKey错误
我正在尝试将不同模型的头像复制到我的User
模型中,但是当我尝试这样做时,我收到了AWS::S3::Errors::NoSuchKey
错误。
这是抛出错误的代码:
old_avatar = OldAvatar.find(1) user = User.find(old_avatar.user_id) user.avatar = old_avatar.avatar user.save
user.avatar = old_avatar.avatar
行是抛出它的原因。
这是我的OldAvatar
模型……
has_attached_file :avatar, :styles => { :t => '20x20#', :s => '40x40#', :m => '50x50#', :b => '80x80#', :f => '100x100#' }, :storage => :s3, :s3_credentials => { :access_key_id => APP_CONFIG['s3_access_key_id'], :secret_access_key => APP_CONFIG['s3_secret_access_key'] }, :path => ":attachment/:id/:basename:normalized_style.:extension", :url => "/:attachment/:id/:basename:normalized_style.:extension", :bucket => "old_bucket"
这是我的User
模型……
has_attached_file :avatar, :styles => { :t => '20x20#', :s => '40x40#', :m => '50x50#', :b => '80x80#', :f => '100x100#' }, :storage => :s3, :s3_credentials => { :access_key_id => APP_CONFIG['s3_access_key_id'], :secret_access_key => APP_CONFIG['s3_secret_access_key'] }, :bucket => "new_bucket", :path => ":attachment/:id_partition/:basename_:style.:extension", :url => "/:attachment/:id_partition/:basename_:style.:extension"
请注意,我正在两个不同的桶之间复制(如不同的型号代码中所述),所以这可能与它有关吗?
事实certificate我的某些早期图像有一些不一致的路径,因此它们与我为Paperclip设置的路径不匹配(因此生成了错误的图像URL)。
所以问题解决了。
我遇到了这个问题,因为使用了一个错误的大小标识符:regular
而不是:normal
。 由于没有:regular
,它给了我这个错误。