duanjuda5789 2012-07-18 14:06
浏览 71
已采纳

cakephp $ this-> User-> save($ this-> data)错误记录用户的编辑功能

I am trying to create the "edit" profile page for a logged user in cakephp. This would be the function to add/edit information about the user. I get an error during the $this->User->save($this->data) function and I don't understand what is the problem.

public function edit() {
   $this->User->id = $this->Auth->User('id');

    if ($this->request->is('post')) {
        if ($this->User->save($this->data)) {
            $this->Session->setFlash(__('The user has been saved'), 'flash_success');
           // $this->redirect($this->Auth->redirect());
        } else {
            var_dump($this->invalidFields());

            $this->Session->setFlash(__('The user could not be saved. Please, try again.'), 'flash_failure');
        }
    } else {
        //autocompleto il form
        $this->data = $this->User->read(null, $this->Auth->User('id'));
    }
}

The view is:

<?php 
echo $this->Form->create('User',array('action' => 'edit'));
echo $this->Form->input('name', array('label'=> 'Name'));
echo $this->Form->input('surname', array('label'=> 'Surname'));
echo $this->Form->input('id', array('type'=> 'hidden'));
echo $this->Form->end(__('Submit')); 
?>
  • 写回答

1条回答 默认 最新

  • duanjiani6826 2012-07-21 08:13
    关注

    I see you use Auth component. If your Auth::authorize default value is overridden ensure that you give user proper rights to perform data writing (maybe he only allowed to read).

    Another issue could be your $validate declaration in model, where you force user to enter field value (using 'required' = true) but actually this field is not even displayed on View. You could avoid this validation rule on data edit if 'on' => 'create' is defined inside.

    Also I would recommend use CakePHP debug() instead of var_dump() for debugging purpose.

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论

报告相同问题?

悬赏问题

  • ¥50 求解vmware的网络模式问题
  • ¥24 EFS加密后,在同一台电脑解密出错,证书界面找不到对应指纹的证书,未备份证书,求在原电脑解密的方法,可行即采纳
  • ¥15 springboot 3.0 实现Security 6.x版本集成
  • ¥15 PHP-8.1 镜像无法用dockerfile里的CMD命令启动 只能进入容器启动,如何解决?(操作系统-ubuntu)
  • ¥30 请帮我解决一下下面六个代码
  • ¥15 关于资源监视工具的e-care有知道的嘛
  • ¥35 MIMO天线稀疏阵列排布问题
  • ¥60 用visual studio编写程序,利用间接平差求解水准网
  • ¥15 Llama如何调用shell或者Python
  • ¥20 谁能帮我挨个解读这个php语言编的代码什么意思?