cakephp与containable
我正在使用cakephp(2.4.7)进行开发,并使用containable选项 我有几个find语句,在containable数组中有大约15个表/模型,我的查询日志显示了大约60-100个查询 由于性能更好,我应该使用联接而不是containable吗 我的网站需要高性能标准 是否可以根据Containeable之类的链接模型自动连接,还是必须手动设置连接,如: 例如:cakephp与containable,cakephp,Cakephp,我正在使用cakephp(2.4.7)进行开发,并使用containable选项 我有几个find语句,在containable数组中有大约15个表/模型,我的查询日志显示了大约60-100个查询 由于性能更好,我应该使用联接而不是containable吗 我的网站需要高性能标准 是否可以根据Containeable之类的链接模型自动连接,还是必须手动设置连接,如: 例如: $this->Message->find('all', array( 'joins' => a
$this->Message->find('all', array(
'joins' => array(
array(
'table' => 'users',
'alias' => 'UserJoin',
'type' => 'INNER',
'conditions' => array(
'UserJoin.id = Message.from'
)
)
),
'conditions' => array(
'Message.to' => 4
),
'fields' => array('UserJoin.*', 'Message.*'),
'order' => 'Message.datetime DESC'
));
指导我实现目标的正确方法。Contain需要大量系统资源才能从表中生成数据,因为它需要进行大量查询并对每个表应用Hash::nest()函数 但是,通过连接,您将获得大量重复的数据,并且您需要自己从中提取数据。不是最好的解决办法,嗯 我不知道哪一个更适合您,但获得最佳性能结果的最佳方法是在表和缓存中使用索引