データベーステーブルの構造を変更(カラムの追加や変更など)したのに、追加したカラムに対して$result[‘Model’][‘field_added’]とかでアクセスしたら怒られました。
本番環境でのみ発生するので最初悩みましたが...。
Debugモードが0の場合、Cakephpではモデルのキャッシュが結構長い時間有効になっているようで、モデルにテーブルの変更内容が反映されないことが原因でした。
で、ググって見つけたサイトがCakePHPでテーブル構造を変更しても反映されないでしたが、単純に/app/tmp/cache/modelsにある問題のテーブルに該当するキャッシュを消しても解決しませんでした。
んでもって、次に消したキャッシュファイルが、
/app/tmp/cache/persistent/myapp_cake_core_method_cache
これで変更が反映されました。
めでたし、めでたし。
「Cakephp2 DBの変更がmodelに反映されない」への1件の返信
[…] 参考ありがとう:http://culdesac.verse.jp/?p=119 […]