herokuで画像が反映されない
解決したいこと
herokuにデプロイ後、seedファイルを反映させても、画像が表示されない。(ローカル環境では正しく表示されています)
現状は以下のとおりです。
・seedファイルのデータに画像をアタッチさせる(Avtive_strage使用)
・エラー文は以下のとおり
Failed to load resource: the server responded with a status of 500 (Internal Server Error)
・検証ツールで画像を確認してみてもNothing to previewとなってしまっている
・画像はpublic/imagesの中に入っている
・ローカルでは画像は表示されている
・ログを確認したところstatus=500 との記載のみで解決策を見出せない
該当のソースコード
seeds.rb
require "csv"
CSV.foreach('db/store.csv', headers: true) do |row|
laundry = Laundry.new(
name: row['name'] ,
address: row['address'],
opening_date: row['opening_date'],
open_time: row['open_time'],
close_time: row['close_time'],
shoe_washing: row['shoe_washing'],
futon_washing: row['futon_washing'],
dryer: row['dryer'],
washing_machine: row['washing_machine']
)
laundry.image.attach(io: File.open('public/images/image.jpg'), filename: 'image.jpg')
laundry.save
end
以下show.html.erb、該当部分の記述
show.html.erb
<%= image_tag @laundry.image.variant(resize: '300x300'), class: 'store-image' %>
試したこと
1.以前は画像をapp/assets/images内に配置していましたが、public/imagesに変更、それに伴いseedファイルのパスも変更。画像は表示されないままでした。(herokuでdbのリセットも行いましたが変化なし)
エラー内容から画像のパスが正しくないのではないかと考えているのですがどのように修正をすれば良いのかがわからない状態です。
なにか見当がつく方がいましたらアドバイスをお願いいたします。
補足情報(FW/ツールのバージョンなど)
ruby '2.6.5'
rails '6.0.3'
DBはローカルも本番環境もmysqlを使用。
0