我有一个查询,我正在通过分页运行。此查询包含一个模型(“PaymentException”),该模型具有一个 afterfind 方法,该方法附加上一个“ExceptionWorkflowLog”的副本,并将其称为“LastWorkflowLog”。
传递给分页的查询:
$this->paginate = array(
'fields' => array(
'PaymentException.*', 'Procedure.id', 'Procedure.cpt',
'Procedure.expected_amount', 'Procedure.allowed_amount', 'Procedure.difference_amount',
'Claim.id', 'Claim.number', 'Payer.abbr'
),
'limit' => 50,
'joins' => array(
array(
'table' => 'procedures',
'alias' => 'Procedure',
'conditions' => array('Procedure.id = PaymentException.procedure_id')
),
array(
'table' => 'claims',
'alias' => 'Claim',
'conditions' => array('Claim.id = Procedure.claim_id')
),
array(
'table' => 'payers',
'alias' => 'Payer',
'conditions' => array('Payer.id = Procedure.payer_id')
),
array(
'table' => 'groups',
'alias' => 'Groups',
'conditions' => array('Groups.id = Claim.group_id')
)
),
'conditions' => $conditions,
'contain' => array('ExceptionWorkflowLog')
);
结果数组(来自结合了“PaymentException”、“ExceptionWorkflowLog”和“LastWorkflowLog”的查询)如下所示:
0 => 'PaymentException' => 数组(字段和值), 'ExceptionWorkflowLog' => 数组(异常工作流日志), 'LastWorkflowLog' => 数组(最后索引的 ExceptionWorkflowLog 的字段和值) 1 => ...
ExceptionWorkflowLog 通过 PaymentException.id 映射到 PaymentException。这是多对一的关系(因此是 ExceptionWorkflowLog 下的结果数组)。
我想使用分页对最后索引的 ExceptionWorkflowLog 或 LastWorkflowLog 上的“更新”字段进行排序。
有没有办法用分页来做到这一点?目前,如果我将表标题设置为指向“LastWorkflowLog.updated”,则查询返回 false,因为查询不知道“LastWorkflowLog”是什么。