0

ローカルマシンで開発し、最近サーバーにインストールしたPHPアプリケーションがあります。

データベーステーブルの1つにいくつかの新しいフィールドを作成するまで、すべてが正常に機能しています。これらはブール値(tinyInt1)であるため、フォームの追加/編集でチェックボックスが表示されます。

これらのフィールドは、サイトを公開した後に作成されたため、ローカルマシンとサーバーの両方で同時に作成しました。ローカルマシン上のアプリケーションはこれらの新しいフィールドを検出し、「自動的に」フォームにチェックボックスを作成しますが、サーバー上では、モデルがこれらのフィールドがテーブルに存在することを検出していないかのようです。

私が使用した:

print_r($this->Model->getColumnTypes()); 

これを確認し、サーバー上のモデルがこれらの新しいフィールドについて認識していないように見えることを確認します。ただし、私のローカルマシンでは認識しています。

私はこれに少し困惑しています。私はCakePHPをしばらく使っていますが、私は専門家ではないので、何かを見落としているに違いないと確信しています...

編集:それを解決しました。修正されたサーバーでdebugを1に設定すると、モデルは新しいデータベースフィールドからすべてのデータのフェッチを開始しました。

4

1 に答える 1

2

モデル キャッシュをクリアします。フォルダー内のファイルapp/tmp/cache/models/

于 2012-10-17T13:33:52.643 に答える