LoginSignup
6
5

More than 5 years have passed since last update.

carrierwaveのimage_cacheをしても画像が保持されない問題

Posted at

はじめに

今僕はある会社でインターンシップとして参加していますが、そこである管理ページにcarrierwaveを使って画像投稿機能を追加するというものを実装しました。

困ったこと

gemで簡単にインストールは出来て、画像の新規登録は問題無く出来ました。しかし、編集機能の際に画像を改めて指定しないとアップロードした画像のパスが無くなってしまうという問題がおきました。
いろんなサイトでは、以下の記述をすることで元あった画像のキャッシュを渡してくれるみたいなのですが、上手くいきませんでした。

<%= f.hidden_field :image_cache %>

解決案

結局以下のように条件分岐するのが早い方法みたいです。

projects_controller.rb
@project = Project.find(params[:id])
if (@project.image.blank?)then
  # imageが空だったら何もしない
else
  @project.image.cache!
end
6
5
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
6
5