Ruby on Rails

[ruby2.5.0/rails5.1.6] productionモードで動かない不具合を修正

rails
o_wani
この記事は作成から5年以上経過しているため、内容が古くなっている可能性があります。

rubyのバージョンを2.3.0 から 2.5.0 に変更した。

アプリケーションは、本番環境でWebサーバは、「apache+passenger」で起動し、production モードで動いている。

その際に下記のエラーが発生した。

F, [2018-08-06T09:57:07.151547 #4228] FATAL -- : [5a82a46a-0671-447c-94fe-4a16fdddbd17] NoMethodError : undefined method `encrypted_password_iv=' for #<User:0x00007f55e763c128>
Did you mean? encrypted_password=
encrypted_password
encrypted_password?
encrypted_password_was
encrypted_password_change

参考サイトの内容で修正を行った。

それぞれの環境で参照される環境の設定ファイルですが、

production.rbにて以下のように修正。

....
....
# Eager load code on boot. This eager loads most of Rails and
# your application in memory, allowing both threaded web servers
# and those relying on copy on write to perform better.
# Rake tasks automatically ignore this option for performance.
config.eager_load = false
....
....
STAFF
o_wani
o_wani
スタッフ
大学卒業後、15年間WEB業界で働く。現在はマネジメントに従事していますが、ChatGPTの登場に触発され、このブログを再開。AIをパートナーに、自分で手を動かして実装する楽しさと喜びを再発見中。時代が変わりつつある中でも、陳腐化しない情報発信も目指しています。
記事URLをコピーしました