我有一个名为Forwards
的模型,该模型使用数据库中的表。然而,连接到这个模型的一些视图需要使用我的costum数据源(这是我创建的一个数据源,它将它链接到API)。
现在我的问题是,如何将datasource
添加到已经具有datasource
的模型中。
我如何告诉Paginator
在分页时必须使用这个数据源(这样它就不会确认)
更新
我一直在读abit,在一个模型中使用两个数据源的唯一方法似乎是破解abit,所以我想知道是否有可能在一个控制器中使用两种模型,同时仍然分页?
我想保留这些设置
public $paginate = array(
'fields' => array(
'Offer.id',
'Offer.name',
'OfferUrl.preview_url',
'Stat.ltr',
'Stat.cpc',
'Category.name',
'Country.name')
, 'conditions' => array('Stat.date' => array(
'conditional' => 'BETWEEN'
, 'values' => array()
),
),
'group' => array('Stat.offer_id'),
'Method' => 'getStats',
'totals' => true,
'limit' => 20
);
我在我的控制器中设置了这些
您可以通过调用Model::setDatasSource()来更改数据源。
您可以通过以下方式更改分页器使用的模型:
$this->Paginator->paginate($ModelInstance);
或
$this->Paginator->paginate('ModelName');
你可能想看看那一页。
不再使用Controller::分页,而是使用$this->Paginator->设置。对于每个型号的设置,请使用
$this->Paginator->settings['ModelName'] = array(/*...*/);