保存记录时未插入特定列
A specific column is not being inserted when saving a record
我正在使用 CakePHP 1.3.13。在这里我写了一个代码来将表单插入数据库。
在这里,交易数据库 table 如下所示。
当我将记录插入数据库时,voucher_code 列未插入。
在这里,当我打印 $this->data 时,它会给出所有数据,例如:
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 之外的所有列都被插入了。那么会出现什么错误呢?以及如何解决此错误?
只有缓存数据库 table 模式中存在的那些 columns/fields 才会被保存,因此在 CakePHP 已经缓存它之后添加字段时,您必须清除缓存(删除app/tmp/cache/models
) 以便识别新列。
正在修改
app/Config/core.php
Config::write('debug',2);
正在刷新页面并恢复
Config::write('debug');
原始值也可以。
这是一个非常常见的问题转到您项目的 tmp 文件夹并删除模型和持久文件夹下的所有缓存并重新 运行 您的查询并开始工作。
我正在使用 CakePHP 1.3.13。在这里我写了一个代码来将表单插入数据库。
在这里,交易数据库 table 如下所示。
当我将记录插入数据库时,voucher_code 列未插入。
在这里,当我打印 $this->data 时,它会给出所有数据,例如:
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 之外的所有列都被插入了。那么会出现什么错误呢?以及如何解决此错误?
只有缓存数据库 table 模式中存在的那些 columns/fields 才会被保存,因此在 CakePHP 已经缓存它之后添加字段时,您必须清除缓存(删除app/tmp/cache/models
) 以便识别新列。
正在修改
app/Config/core.php
Config::write('debug',2);
正在刷新页面并恢复
Config::write('debug');
原始值也可以。
这是一个非常常见的问题转到您项目的 tmp 文件夹并删除模型和持久文件夹下的所有缓存并重新 运行 您的查询并开始工作。