繁体   English   中英

致命错误:在非对象cakephp上调用成员函数save()

[英]Fatal error: Call to a member function save() on a non-object cakephp

我是cakephp的新手,所以我收到了以下错误消息:

http://imageshack.com/a/img716/3163/ofvq.png

这是我的CalaboradoresController.php文件:

<?php

class ColaboradoresController extends AppController{

    public $name = 'Colaboradores';

    public function add(){
        if($this->data){
            if($this->Colaborador->save($this->data))
                $this->Session->setFlash ('Colaborador adicionado com sucesso!');
        }
    }

}

?>

这是我的Colaborador.php文件:

<?php

    class Colaborador extends AppModel{

        public $name = 'Colaborador';

    }

?>

将控制器文件名更改为ColaboradorsController.php和控制器名称ColaboradorsController

或者您可以将其添加到您的控制器:

public $uses = 'Colaborador';

模型必须有一个类名,例如admin,初始化的var $name将是你的表

因此,当您尝试保存数据时,必须将型号名称引用到$this->admin->save($this->data)

这样可以避免错误

在调用save函数之前,需要先加载Model。

您可以通过两种方式加载模型

首先:在控制器中定义$ uses,您需要显式加载Colaborador模型:

 var $uses = array('Colaborador','MonthlyReturn','Employee','Company');

第二:你可以像这样使用loadModel函数

 $this->loadModel('Colaborador');

在保存功能之前使用此loadModel函数。

我希望这对你有所帮助。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM