(已编辑)
在我的http://host/MyCake/index.php/table/add
,一个包含10个输入(字段)的表单,提交时,我有
Error: SQLSTATE[23502]: Not null violation: 7
ERROR: null value in column "revista_id" violates not-null constraint
SQL Query:
INSERT INTO "fasciculos" ("created", "modified", "user_id") VALUES ('now()', 'now()', 1)
好吧,关于“Not null violation”(字段revista_id
)我尝试用ALTER COLUMN revista_id DROP NOT NULL
更改SQL(删除约束),并且更改正常,它运行!但是,问题是:* SQL INSERT中的其他10个字段? !!
是的,当我更改时,提交的数据记录为空,所有10个字段都为NULL。
我正在使用PostgreSQL 9.X。
如果发布的数据在那里,我还在FasciculoController上检查了var_dump,是的,它就在那里,
public function add() {
if ($this->request->is('post')) {
$this->Fasciculo->create();
var_dump($this->request->data); // showing below
if ($this->Fasciculo->save($this->request->data)) // bug here!
...
}...
...}
vardump拥有所有POST数据,
array(1) {
["Fasciculos"]=>array(11) {
["other_id"]=> string(3) "540"
//... all data here ...
}
}
答案 0 :(得分:0)
TABLE
是MySQL / PostgreSQL中的保留关键字,并且作为保留关键字,我认为数据库可能会被SQL的INSERT INTO table ...
部分弄糊涂。
此处可能还有其他内容,但尝试重命名Table
模型和控制器可能是个好主意。 (并确保在对模型进行重大更改等时清除CakePHP缓存文件。)