2011-02-28 55 views
3

我有2个模型 - Album和AlbumImage。使用不带表格的Carrierwave保存文件

每张专辑都有与之相关的专辑图片,并且使用Carrierwave通过AlbumImageUploader类上传。

现在我想使用现有的关联专辑图像为每个专辑选择专辑封面。在我用它作为专辑封面之前,我需要处理(剪裁和调整)此选定图像。我裁剪和调整大小功能,我创建了一个AlbumCoverUploader类来保存相册图像的处理版本。

问题是,这次我没有使用表单上传新图像文件,而是使用文件系统中现有的相册图像,而我不确定如何将此图像从我的AlbumImageUploader类传输到我的AlbumCoverUploader类。

任何想法?

回答

1

这很简单。 您必须像使用表单上传文件一样配置您的AlbumCoverUploader。

虽然,使用它与现有的记录相关联的图像,你必须做到以下几点:

album = Album.find(id)     # your existing album 
album_image = album.album_images.first # the image you want as cover 
album.cover = File.open(album_image.image.current_path) 
album.save 

这会抢的图像文件,并作为输入使用的AlbumCoverUploader创建自己的副本的形象。

相关问题