(編者)CakePHP2在add.ctp
張貼空在我的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)
好了,關於 「非空違反」 (字段revista_id
)我嘗試使用ALTER COLUMN revista_id DROP NOT NULL
更改SQL(刪除約束條件),然後更改就可以了,它會運行!但是,問題是:* 其中SQL INSERT的其他10個字段? !!
是的,當我改變時,submited數據記錄是空的,所有10個字段都是NULL。
我使用的是PostgreSQL 9.X.
我也的var_dump檢查在FasciculoController如果公佈的數據在那裏,是的,它是存在的,
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 ...
}
}
不要你的任何其他控制器的'加()'職能的工作? – summea 2013-03-20 17:11:55
我不知道'Table'這個名字是否在這裏引起了一些保留字的問題......但是我似乎無法找到CakePHP API中使用的'Table'......這有點奇怪,使用但是,對於SQL中的實際「表」,單詞「table」是正確的? – summea 2013-03-20 17:14:47
@summea,關於第一個問題,是的,它的確如此。關於第二:對不起,我更改了原始名稱,它是一個有效的名稱,適用於所有應用程序(SQL和Cake)。 – 2013-03-20 18:46:17