嗨,我是cakephp中的新手,我想在数据库中保存一些数组数据 这是我的代码
$user = $this->Users->newEntity();
if ($this->request->is('post')) {
$user = $this->Users->patchEntity($user, $this->request->data);
$userdata=[
'firstname'=>$user['firstname'],
'lastname'=>$user['lastname'],
'nationcod'=>$user['nationcod'],
'usrename'=>$user['username'],
'password'=>$user['username']
];
$this->Users->save($userdata);
但是当我测试它时发生了这个错误: 调用数组上的成员函数errors()。 我只想更改用户发布的数据并将其保存在用户表中。
答案 0 :(得分:0)
您已为$user
分配了$this->Users->newEntity();
。然后使用$user['firstname']
。它不会有任何内容,因为它是一个实体而不是数组。从您的问题我想你想保留用户的用户名作为他们的密码。所以你要做的就是这个。
$user=$this->Users->newEntity();
if($this->request->is('post')){
$this->request->data['password']=$this->request->data['username'];
$user=$this->Users->patchEntity($user,$this->request->data);
$this->Users->save($user);
}