jcm*_*jcm 4 ruby-on-rails carrierwave
我使用Carrierwave允许用户将图像附加到他们的帖子.在帖子列表中,我显示缩略图(以haml为单位),如下所示:
%td= image_tag post.image.url :thumb
Run Code Online (Sandbox Code Playgroud)
如果在创建新帖子时验证失败,我会像这样显示缓存:
= image_tag "/#{ImageUploader::cache_dir}/#{post.image_cache}"
Run Code Online (Sandbox Code Playgroud)
我无法弄清楚的是如何显示缓存的缩略图.检查文件系统确认它与缓存的映像位于同一目录中.我试过了
= image_tag post.image_cache :thumb
Run Code Online (Sandbox Code Playgroud)
但它错误 wrong number of arguments (1 for 0)
好的,终于明白了.
即使在验证错误的情况下,Carrierwave也会缓存上传.毕竟,这就是缓存的用途.它减轻了用户重新上载文件的需要.
gem(我,程序员)的用户不需要担心如何访问缓存.只需在表单和attr_accessible中包含缓存字段,然后像正常一样访问图像(或任何文件).Carrierwave将透明地完成其余工作.所以在我的情况下
%td= image_tag post.image.url :thumb
Run Code Online (Sandbox Code Playgroud)将从商店目录或缓存中正确显示图像.
| 归档时间: |
|
| 查看次数: |
4346 次 |
| 最近记录: |