使用CakePHP模型类

时间:2012-08-10 01:34:18

标签: php cakephp cakephp-2.1

我正在研究CakePHP,对于任何明显的错误都很抱歉。 我创建了模型类并更改了默认表名。

class Weathers extends AppModel {    
    public $tablePrefix = 'weather_';
    public $useTable = 'forecasts';

    function saveCountries($countries){
         ...
    }
}

我的控制器功能

if (!$this->loadModel('Weather'))
   exit;
$Weather = $this->Weather;
$Weather->saveCountries($countries);

我在 $ Weather-> saveCountries($ countries);

上收到错误
  

错误:在数据源中找不到模型天气的表天气   默认值。

请帮助找出我做错了什么。

2 个答案:

答案 0 :(得分:1)

您定义的Model类是Weathers而不是Weather。因此,只需更改班级名称Weather而不是Weathers即可。

答案 1 :(得分:1)

注意Model类的声明。

你称之为Weathers

这没有问题。但是,当您尝试加载模型Weather时(在这种情况下不是复数)CakePHP正在为您动态构建模型,而不是使用您的Weathers(复数)类。 / p>

CakePHP标准是为模型使用单数名称。我建议您将模型类重命名为Weather以避免此问题。进行此更改后,用于加载模型的代码将按预期工作。