如何对来自不同数据库的数据进行分页';是cakephp中的表吗?

如何对来自不同数据库的数据进行分页';是cakephp中的表吗?,cakephp,pagination,multiple-databases,Cakephp,Pagination,Multiple Databases,我有两个数据库用户和magento。 magento位于LAN中的远程计算机上。 并且用户驻留在我的本地计算机上 它们之间的连接和从magento数据库获取数据的工作正常 但我想对magento的表数据进行分页。 简单的显示已经完成,但对于分页,我们需要模型名,我怎么能有其他数据库的模型 // in controller action $this->Vendor->changeDataSource('vsdatabase');

我有两个数据库用户和magento。 magento位于LAN中的远程计算机上。 并且用户驻留在我的本地计算机上

它们之间的连接和从magento数据库获取数据的工作正常 但我想对magento的表数据进行分页。 简单的显示已经完成,但对于分页,我们需要模型名,我怎么能有其他数据库的模型

          // in controller action
           $this->Vendor->changeDataSource('vsdatabase');
            if($this->changeDbSource('vsdatabase'))
            {
                $magento_data = $this->Vendor->query("SELECT * from admin_user");
                $this->set('products',$magento_data);
            }

          and changeDataSource($newdb) is defined in model file
         and changeDbSource($database='default') in controller
那么如何解决分页的问题呢? 我已经完成了不分页的数据获取。 或者有其他选择吗?
谢谢,

你走错了路

您应该为外部数据库创建一个新的数据库配置,称之为say<在
app/config/database.php

然后你需要一个新连接的模型。告诉模型要与
$useDBConfig
一起使用的数据库连接:

class Vendor extends AppModel {
    var $useDbConfig = 'vendor_db';
}

这样,在您的供应商控制器中,您可以使用标准的cakePHP函数(包括paginate)进行数据库调用

$this->paginate('Vendor')

cakePHP模型函数几乎总是阻止您编写自己的查询。一般来说,如果您认为必须编写查询,则可能是做错了什么