CakePHP-在没有表的模型上使用Model::read()

CakePHP-在没有表的模型上使用Model::read(),cakephp,model,Cakephp,Model,我有一个定义了$useTable=false和自定义$schema的模型 我试图通过使用标准的模型方法,尽可能地将所有内容整合到框架中,即使没有表。例如,我使用Model::save()来更新模型的$data数组 然而,从一个控制器上,我试图使用Model::read(),但我认为它失败了,因为read()在模型中没有ID。有没有办法在没有表的模型中模拟IDs?我知道我可以通过$this->Model->data['Model']['field']访问我想要的数据,但我觉得这不是一个好的做法。r

我有一个定义了
$useTable=false
和自定义
$schema
的模型

我试图通过使用标准的模型方法,尽可能地将所有内容整合到框架中,即使没有表。例如,我使用
Model::save()
来更新模型的
$data
数组

然而,从一个控制器上,我试图使用
Model::read()
,但我认为它失败了,因为
read()
在模型中没有ID。有没有办法在没有表的模型中模拟IDs?我知道我可以通过
$this->Model->data['Model']['field']
访问我想要的数据,但我觉得这不是一个好的做法。

read()用于根据主键或id检索数据

如果您试图从底层数据源(不管是什么)读取数据,但没有主键,那么可能需要find('first',…)来完成

如果您确实有一个主键,但它不被称为'id'(可能是'field'),那么分配
var$primaryKey='field'在模型中,您应该可以基于该字段数据使用read


顺便问一下,底层数据源是什么?

那么$data存储在哪里?如果使用save()和read(),则可能需要一个表来存储数据。如果要“读取”数据,只需从实际具有数据/表的模型中读取数据即可$这是ActualDataModel->read()还是我遗漏了什么?