仍然停留在更新行cakephp中
我已经发布了一个问题并得到了帮助,但我仍然没有成功。 我正在尝试更新cakePHP 2.3.1中的一行。我使用$validates数组和控制器(简化)对AppModel进行了类测试扩展: 编辑后的我的视图以及用户的建议:D:仍然停留在更新行cakephp中,cakephp,Cakephp,我已经发布了一个问题并得到了帮助,但我仍然没有成功。 我正在尝试更新cakePHP 2.3.1中的一行。我使用$validates数组和控制器(简化)对AppModel进行了类测试扩展: 编辑后的我的视图以及用户的建议:D: class Test extends AppModel { var $name= 'Test'; var $primaryKey= 'stuId'; public $validate= array(.......); } 我在视图中设置了$primaryKey,在控制器中
class Test extends AppModel {
var $name= 'Test';
var $primaryKey= 'stuId';
public $validate= array(.......);
}
我在视图中设置了$primaryKey,在控制器中设置了$this->Test->$primaryKey,但仍然出现错误:
数据库错误:SQLSTATE[23000]:完整性约束冲突:键“PRIMARY”SQL查询的1062重复项“”:插入到cakePhp.tests(stune、stuDoB、studadd)值('oĐa oĐ)ức Anh,2013-03-25,Kim Liên)
有人能帮我吗,我真的需要帮助,我被困在这个问题上两天了,想不出来:(快速尝试: 尝试将控制器代码中的
$this->data
更改为$this->request->data
更多内容:
底线是,您的主键未设置
public$primaryKey='stuId';//注意“public”而不是“var”
debug($this->request->data);
你一直在说“视图”,但你真正的意思是“模型”。我想你必须改变下面这行
$this->Test->stuId = $this->data['Test']['stuId'];
到
因为它是包含主键值的id
属性
$this->Test->stuId = $this->data['Test']['stuId'];
$this->Test->id = $this->data['Test']['stuId'];