从 Cake 中的另一个模型访问模型方法


Access a model method from another model in Cake

我不确定我是否正确使用了MVC架构,所以如果我出错了,请放轻松。

我有一个模型Account,可以从Holding模型中获取大量估值。这两个模型是链接的,因为Account有很多Holdings

在我的Account模型中,我有一个函数,可以从账户中检索持股的总和,并将其排列在$date=>$value类型数组中。

我有另一个单独的模型,称为FxRate其表是外汇汇率和日期的负载。在我的Account模型中,我想通过在FxRate表上运行查找来检索外汇汇率数组,以便我可以转换之前检索到的估值数组。

FxRate没有链接到其他任何一个模型,我似乎无法从我的Account模型中find任何数据。实现这一目标的正确方法是什么?

如果你在你的模型文件中,你可以使用这个:

App::uses('FxRate', 'Model');
$FxRate = ClassRegistry::init('FxRate') // and not $FxRate =  new FxRate(), see comments;
$FxRate->find('all');

相反,您可以在控制器中使用loadModel

$this->loadModel('FxRate');
$this->FxRate->find('all');