保存记录时未插入特定列

时间:2016-05-23 10:05:43

标签: php mysql cakephp cakephp-1.3

我正在使用 CakePHP 1.3.13 。在这里,我编写了一个代码,将表单插入到数据库中。

此处,交易数据库表如下所示。

enter image description here

当我将记录插入数据库时​​,未插入voucher_code列。

当我打印$ this->数据时,它会提供所有数据,如:

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->Deal->create();
 $this->Deal->save($this->data);

因此除了 voucher_code 之外,所有列都会被插入。那么错误是什么?以及如何解决此错误?

3 个答案:

答案 0 :(得分:2)

只保存缓存数据库表模式中存在的那些列/字段,因此在CakePHP缓存之后添加字段时,您必须按顺序清除缓存(删除app/tmp/cache/models)用于识别新列。

答案 1 :(得分:1)

修改

Config::write('debug'); 

刷新页面并恢复

$("#add_resident").click();
$(".resident").append('<%= escape_javascript(render partial: "resident_form") %>');

原始值也可以。

答案 2 :(得分:0)

这是非常常见的问题,请转到项目的 tmp 文件夹并删除模型和持久文件夹下的所有缓存,然后重新运行查询并开始工作。