実現したいこと
RailsアプリからCarrierwaveとfogを利用してAWS S3へPDFを格納します。その際にPDFのプレビューを表示したく、サムネイルをPNG形式で作成してます。この作成したPNG形式のサムネイルをアプリで表示したいのですが、実現できていません。オブジェクトキーを表示させたいです。
発生している問題
PDFのコンバートはS3へ正常にPDFファイルとPNGファイルを格納しています。しかしRailsアプリケーションではログを確認するとRouting Errorと表示されていて、ファイルが存在しない認識になっています。しかしS3のアクセス設定は正しく、ブラウザからURLを直接入力すると問題なく該当のPNGファイルは表示できます。
つまりシステム上で正しくオブジェクトキーが取得できておらず表示できない状態となっています。
実装しているコード
実装しているコードはapp/uploaders/image_uploader.rb
の中に記述。
Rails
1 version :web_thumb do 2 process :resize_to_fit => [500,500] 3 process :paper_shape 4 def full_filename (for_file = model.logo.file) 5 super.chomp(File.extname(super)) + '.png' 6 end 7 end 8 9 def paper_shape 10 manipulate! do |img| 11 if img.rows*4 != img.columns*3 12 width=img.columns 13 height=img.columns/3*4 14 img.crop!(0,0,width,height,true) 15 else 16 img 17 end 18 end 19 end
いくつか情報を参考にしてますが、以下のコマンドをどこかに入力すれば解決するのかもしれませんが、現在、解決まで至っていません。
file_name = "hoge_file" s3_path = "site_b" key = "#{s3_path}/#{file_name}"
よろしくお願いします。
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。