発生している問題・エラーメッセージ
herokuにデプロイ後、seedファイルを反映させても、画像が表示されません。(ローカル環境では正しく表示されています)
コンソールを確認すると以下のエラーメッセージ が表示されています。
Failed to load resource: the server responded with a status of 404 (Not Found)
エラー文から画像が正しく読み取れないため表示されていないということは理解できました。
seeds.rb
の画像をattachするための記述が怪しいのではないかとか思っているのですが、改善方法がわかりません。
教えていただけると幸いです。
以下、エディタのコードです。
該当のソースコード
seeds
120.times do |n| 2 laundry = Laundry.new( 3 name: "コインランドリー#{n + 1}号店", 4 address: "愛知県名古屋市1-#{n + 1}", 5 opening_date: Faker::Date.between(from: '2000-01-01', to: Date.today), 6 open_time: Faker::Time.between(from: DateTime.now - 1, to: DateTime.now), 7 close_time: Faker::Time.between(from: DateTime.now - 1, to: DateTime.now), 8 shoe_washing: %w(true false).sample, 9 futon_washing: %w(true false).sample, 10 dryer: %w(true false).sample, 11 washing_machine: %w(true false).sample, 12 ) 13 laundry.image.attach(io: File.open('app/assets/images/image.jpg'), filename: 'test_image.jpg') 14 laundry.save 15end
以下show.html.erb
の記述です
<%= image_tag @laundry.image, class: 'store-image' %>
コントローラーは以下のように記述をしています。
before_action :set_laundry, only: [:show, :edit, :update] (略) def set_laundry @laundry = Laundry.find(params[:id]) end
試したこと
config/environments/production.rb
内でconfig.assets.compile = true
にし、 rake assets:precompile RAILS_ENV=production
コマンドを実行することでアセットパイプラインを通すことができるとのことでしたのこちらを実行しましたが特に変化はありませんでした。
補足情報(FW/ツールのバージョンなど)
ruby '2.6.5'
rails '6.0.3'
DBはローカルも本番環境もmysqlを使用しています。
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
退会済みユーザー
2020/10/11 02:13
退会済みユーザー
2020/10/14 05:54