私の人生では、User テーブルの特定の列が更新されていない理由を理解できませんが、Heroku の本番環境 (Ruby on Rails、PosgreSQL) でのみ更新されます。
シンプルなフォームを使用して更新するユーザー avatar_url 文字列フィールドがあります。フォームは、通常の User コントローラー update メソッドに投稿されます。開発、テスト、およびステージング (Heroku では、本番モードでのステージング) 環境で完全に機能します。
prod サーバーで Heroku のログを確認しました。params ハッシュが正しく、{:user => { :avatar_url => " http://sometwitteravatar.com/somepic.jpg "}}の値を持っていることを確認しました。これがユーザー更新アクションに投稿していること。しかし、更新クエリは 1 つしか表示されず、更新されるのは user.updated_at だけです。エラーはありません。また、本番環境で Rails コンソールを実行し、user.updated_at が更新されるが user.avatar_url が更新されないことを確認しました。
しかし、本番モードで実行されているherokuの同一のステージング環境では、すべてが完璧に機能します。何が与えますか??