zend框架表单更新无法正常工作

时间:2015-03-04 05:18:43

标签: php mysql zend-framework

我使用表单来更新我的用户详细信息。但是当我尝试更新时,它会显示自定义异常消息"用户更新失败。未找到用户!"。 包括创建,删除等在内的所有其他操作都正常工作。

我在控制器中有这个:

public function updateAction ()
{
    $userForm = new Application_Form_User();


    $userForm->removeElement('password');
    $userModel = new Application_Model_DbTable_User();
    if ($this->_request->isPost()) {
        if ($userForm->isValid($_POST)) {
            $userModel->updateUser(
                    $userForm->getValue('userid'),
                    $userForm->getValue('name'),
                    $userForm->getValue('username'),
                    $userForm->getValue('email'),
                    $userForm->getValue('role')
            );
            return $this->_forward('list');
        }
        } else {
            $id = $this->_request->getParam('userid');
            $currentUser = $userModel->find($id)->current();
            $userForm->populate($currentUser->toArray());
        }
        $this->view->form = $userForm;



}

在模型中我有:

    public function updateUser($id,$name,$email,$username, $role)
    { 

        $rowUser = $this->find($id)->current();
        if($rowUser) {
            // update the row values
            $rowUser->username = $username;
            $rowUser->name = $name;
            $rowUser->email = $email;
            $rowUser->role = $role;
            $rowUser->save();
            //return the updated user
            return $rowUser;
        }else{
            throw new Zend_Exception("User update failed.User not found!");


        }           

    }

我使用与用户创建操作相同的表单。 当我点击更新内容时,它会使用具有id的用户的信息填充表单,但是当我尝试更新它时,只是失败了。我已经在过去的露水日中苦苦挣扎。请帮我解决这些问题。

0 个答案:

没有答案