最近 Rails アプリを開発中にデータベースの更新処理を書いたところ、以下のようなログが出力された。
DEPRECATION WARNING: update_attributes is deprecated and will be removed from Rails 6.1 (please, use update instead) (called from block (3 levels) in <main> at /path/to/project/example.rake:15)
ログに書かれているように update_attributes メソッド(と update_attributes!)は非推奨で Rails 6.1 では削除が予定されているようだ。将来を見据えて別のメソッドに書き換える必要がある。
調べてみたところ、現在の update_attributes, update_attributes! メソッドは update, update! メソッドの別名となっているようだ。なので基本的には update, update! と書き換えればそのまま動くようだ。
実際に自分のコードも update に書き換えたらそのまま動作した。
Rails 6.1 ActiveRecord deprecates update_attributes methods新しいバージョンへの対応は早めに行っておくに越したことはない。
Sponsored Link