2010-05-19 64 views
1

我想添加一个新用户到数据库,并通过填写表单并提交它来完成。所有似乎都很好。在我的控制器save()调用之前,我将返回所有数据并提供所有必要的数据。它是有效的(ated),因为没有错误被返回。CakePHP 1.3控制器保存()不保存数据

但是然后没有任何反应。我正在返回到我的表单,没有显示任何错误。 这是我的“保存线”:

if($this->Registratie->save($this->data)) { 

我没有利用任何beforeSave()方法。

使用debug($this->validationErrors);所示:

app/controllers/registratie_controller.php (line 45) 

哪个的代码行从上方。

我一直在经历我的代码一遍又一遍。问题是什么?

+0

什么是'的var_dump($这个 - > Registratie->保存($这个 - >数据))的输出;'? – Mike 2010-05-19 18:46:00

+0

您*返回*数据?我相信你宁愿抛弃它,因为回归会打破控制流。 – zefciu 2010-05-25 12:13:40

+0

$ this-> data数组的格式是什么?这个数组的键不匹配,它不会保存,并且不会抛出错误 – Jonathan 2010-05-28 13:17:02

回答

1

当您创建使用表单助手就会产生像输入名称的形式:

<input type='text' name='data[Registratie][first_name]'> 

一旦提交表单的蛋糕将是推到$这个 - >数据阵列“Registratie”的索引

你可能需要索引传递给模型节省

if ($this->Registratie->save($this->data['Registratie'])) { 

的时候我也做了的var_dump($这个 - >数据)print_r($ this-> data)以确保您的表单字段正在通过。

1

我有同样的问题,修正了Jack B Nimble所说的话。使用CakePHP 1.3

样品:

型号:联系人

$this->data['contact']