[cakePHP3]如何调试失败的保存

时间:2016-08-04 15:38:24

标签: debugging save cakephp-3.0

这是我的代码,我在进行简单保存时遇到问题。消息是:(当我试图保存

$user = $this->Users->newEntity();        
    if($this->request->is('post'))
    {                     
        $user = $this->Users->patchEntity($user, $this->request->data);    

        if($this->Users->save($user))
        {
            $this->Flash->success(':)');
            return $this->redirect(['controller' => 'Users', 'action' => 'index']);
        }
        else
        {                
            $this->Flash->error(':(');

        }
        debug($this->request->data);             
    }
    $this->set(compact('user'));
这是我的表,我进行了迁移。所有字段都可以为空

 $table = $this->table('users');
    $table->addColumn('first_name','string',array('limit'=>100))
          ->addColumn('last_name','string',array('limit'=>100))
          ->addColumn('email','string',array('limit'=>100))
            ->addColumn('password','string')
            ->addColumn('role','enum',array('values'=>'admin,user'))
            ->addColumn('active','boolean')
            ->addColumn('created','datetime')
            ->addColumn('modified','datetime')
            ->create();

这是我的请求数据

[
'first_name' => 'wewe',
'last_name' => 'wewe',
'email' => 'wewe@wee.com',
'password' => 'wewewe',
'role' => 'admin',
'active' => '1'

我希望你帮助我,我非常沮丧

编辑:如果我使用print_r($ user-> errors());我明白了......

Array ( [firts_name] => Array ( [_required] => This field is required ) )

1 个答案:

答案 0 :(得分:1)

您的错误在您的数据名称中,请求数据是

  

'如first_name' => ' wewe'"

您的专栏名称为" firts _name",这是一个输入错误。