我有 3 个 model 分别是:album(相册),activity(活动),news(新闻) 这三个 model 都需要关联许多图片,我用 carrierwave 来上传 于是我又写了个 modle: photo
class Photo
include Mongoid::Document
belongs_to :photographic, polymorphic: true
end
前面的那三个 model 大概都写成这样 (Album 为例):
class Album
include Mongoid::Document
has_many :photos, as: :photographic
end
这样写不知道会不会有问题,Photo 这个 collection 会不会太海量导致查询缓慢?
另外我用 carrierwave 来上传 photo 图片
class Photo
include Mongoid::Document
belongs_to :photographic, polymorphic: true
mount_uploader :image, PhotoUploader
filed :description
end
在 Album,Activity,News 中的图片我都想用 PhotoUploader 一个 carrierwave uploader 来上传,这里我希望 Album 中的图片存到 public/upload/album/1/下 这里 1 为相应 Album 的 id Activity 中的图片存到 public/upload/activity/1/下 这里 1 为相应 Activity 的 id 该怎么写 PhotoUplader 中的 store_dir 方法呢?