shuhei-T / reptiles_log

爬虫類飼育者のためのかんたん飼育記録サービス「レプログ!」
https://reptileslog.com/
8 stars 1 forks source link

飼育記録画面の給餌セレクトボックスが本番環境で表示されない #85

Closed shuhei-T closed 2 years ago

shuhei-T commented 2 years ago

質問・実現したいこと

ローカル環境では動作しておりました箇所が、herokuにデプロイ後、production環境でセレクトボックスの中身が表示されていませんでした。ローカル環境と同様に動作させたいです。

[本番環境] Image from Gyazo optionタグの中身が空になっているのが分かります。 Image from Gyazo

[ローカル環境] Image from Gyazo optionタグの中がしっかり存在します。 Image from Gyazo

該当のソースコード

app/views/logs/new.html.erb

          <div class="mb-3">
            <%= f.fields_for :log_feeds, @logs.log_feeds.build do |log_feeds_f| %>
              <div class="mb-3">
                <%= log_feeds_f.label :name, class: 'form-label' %>
                <%= log_feeds_f.collection_select(:feed_id, Feed.all, :id, :name, {prompt: "--"}, {class: 'form-select', style: 'display: inline-block;width: auto;'}) %>
              </div>
              <div class="mb-3">
                <%= log_feeds_f.label :count, class: 'form-label'%>
                <%= log_feeds_f.number_field :count, class: 'form-control', style: 'display: inline-block;width: auto;' %>
              </div>
            <% end %>
          </div>

考えられる原因

あらゆるネット記事を探しましたが、根本的な原因はわかりませんでした。

試したこと

追記

$ heroku run rails db:seed                                                                                                  main
Running rails db:seed on ⬢ reptileslog... up, run.5358 (Free)
rails aborted!
ActiveRecord::RecordInvalid: バリデーションに失敗しました: Logを入力してください
/app/vendor/bundle/ruby/3.0.0/gems/activerecord-6.1.4.4/lib/active_record/validations.rb:80:in `raise_validation_error'
/app/vendor/bundle/ruby/3.0.0/gems/activerecord-6.1.4.4/lib/active_record/validations.rb:53:in `save!'
/app/vendor/bundle/ruby/3.0.0/gems/activerecord-6.1.4.4/lib/active_record/transactions.rb:302:in `block in save!'
/app/vendor/bundle/ruby/3.0.0/gems/activerecord-6.1.4.4/lib/active_record/transactions.rb:354:in `block in with_transaction_returning_status'
shuhei-T commented 2 years ago

git push heroku mainをしてから、 heroku run rails db:seedすることで解決しました。