0

当我创建用户模型时,avatar.png 文件会在定义的路径中正确上传到 S3。问题是,当我尝试“读取/下载” user.avatar.url 时,它总是给出默认路径,即默认头像。

我的 user.rb 有这个:

attr_accessible :avatar

has_attached_file :avatar,
        :storage => :s3,
        :bucket => "/avatars",
        :s3_credentials => {
          :access_key_id     => ENV['S3_KEY'],
          :secret_access_key => ENV['S3_SECRET']
        },
        :path => "/avatars/:filename",
        :default_url => "https://s3.amazonaws.com/avatars/default.png"

在我看来,我有:

user.avatar.url  #<--- Which outputs https://s3.amazonaws.com/avatars/default.png

任何想法如何获得正确的 url 和正确的头像(在 S3 中确实存在)?

或者如何调试附件搜索路径(即回形针搜索文件的路径)?

4

1 回答 1

0

问题是附件文件名属性没有被保存,这是由于这一行:

attr_accessor :avatar_file_name

删除该行解决了问题。

于 2012-08-19T16:58:14.230 回答