3

我一直在尝试使用 Carrierwave 进行图像上传,效果很好,我只是想知道如何为每个用户创建一个上传目录,即:-

上传/current_user.id/gallery.id/

我有两张桌子,

图片

  • ID
  • 标题
  • 描述
  • 画廊_id
  • created_at
  • 更新时间

画廊

  • ID
  • 标题
  • 描述
  • 用户身份
  • created_at
  • 更新时间

非常感谢

4

1 回答 1

4

由于您提供的设置细节很少,我将根据我的回答做出假设。

如果您有某个Gallery模型与相关上传者绑定,则上传者有一个model返回Gallery实例的方法。我还将假设您的实例与某些记录Gallery有关系。您需要做的就是向您的上传程序添加一个方法来重载默认提供的内容。ownerUserstore_dirCarrierWave::Uploader::Base

def store_dir
  "uploads/#{model.owner.id}/#{model.id}"
end
于 2012-07-26T13:27:23.513 回答