CakePHP致命错误:在非对象(Controller)上调用成员函数create()

时间:2012-01-25 16:45:49

标签: cakephp controller php

我有CakePHP控制器代码,它抛出以下错误'致命错误:在非对象上调用成员函数create()'。

控制器代码如下:

if ($this->request->is('post')) {
            $this->MonthlyReturn->create();
            $this->MonthlyReturn->saveField('company_id', $cid);    // Assign current company ID to this monthly return before saving
            if ($this->MonthlyReturn->save($this->request->data)) {
                $this->Session->setFlash(__('The monthly return has been saved'));
                $this->redirect(array('action' => 'index'));
            } else 
            {
                $this->Session->setFlash(__('The monthly return could not be saved. Please, try again.'));
            }
        }

非常感谢任何帮助。

2 个答案:

答案 0 :(得分:10)

如果您在控制器中定义$uses,则需要明确加载MonthlyReturn模型:

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

请参阅documentation

答案 1 :(得分:0)

你应该首先加载模型

$这 - > loadModel(" MonthlyReturn&#34);

这里的MonthlyReturn是模型的名称。