2016-05-23 5 views
1

CakePHP 1.3.13で作業しています。ここでは、フォームをデータベースに挿入するコードを記述しました。レコードを保存するときに特定の列が挿入されていない

ここで、データベースのテーブルは以下のようになります。私はvoucher_code列が挿入されていないデータベースにレコードを挿入

enter image description here

$this->Deal->create(); 
$this->Deal->save($this->data); 

だから、すべての列のは、以外に挿入されています。私のような書き込みINSERTクエリを持っている。ここ

Array 
(
[Deal] => Array 
    (
     [title] => Deal title 
     [original_price] => 350 
     [discount] => 45 
     [total_price] => 192.5 
     [voucher_code] => TEST3211 
     [redeem_points] => 158 
     [deal_details] => tetert 
     [condition] => Testing 
     [deal_address] => tertre 
     [deal_end_date] => 2016-05-26 
     [no_of_deals] => 10 
     [merchant_id] => 24 
     [image] => 146399768856085.jpg 
    ) 

) 

:私はの$ this - >データを印刷するとき

はここで、それは意志のようなすべてのデータを提供しますvoucher_code。では、エラーはどうなりますか?どうすればこのエラーを解決できますか?

+0

野生の推測: 'voucher_code'カラムは最近になってスキーマに追加されました。つまり、テーブルが最初に作成されたときには存在しませんでしたか? – ndm

+0

@ndmはい、テーブルを作成した後にこの列を追加しました。 –

答えて

2

キャッシュされたデータベーステーブルスキーマに存在するカラム/フィールドのみが保存されるため、CakePHPがすでにキャッシュした後にフィールドを追加するときは、キャッシュをクリアする必要があります(削除app/tmp/cache/models)認識される列。

+0

ありがとうございます。今はその仕事。 –

1

app/Config/core.php 
Config::write('debug',2); 

を変更すると、ページを更新し、元の値に

Config::write('debug'); 

を復元するという方法もあります。

関連する問題