我正在使用 CakePHP 2.3.7。为了向用户显示内容,我有一个名为 contents 的模型。控制器从这个模型中获取数据并使用分页将其发送到视图。到目前为止,一切正常。现在我想以非常具体的顺序显示内容。据我所知,我不能在 paginate() 中使用“order”参数,因为顺序是:
- 每个用户的个人(因此不是数据库中的字段)
- 根据动态创建的复杂计算频繁更改
- 当前存储在会话数组中
我有一个包含所有相关项目 ID 的数组和一个定义订单位置的值。我需要的是一种方法来教分页使用我在数组中定义的顺序而不是数据库中的任何排序。我拥有的数组如下所示,其中第一个数字是订单中的位置,第二个是项目的 ID。
有没有办法告诉分页使用这个特定的项目顺序?
array(
(int) 0 => '308',
(int) 1 => '311',
(int) 2 => '313',
(int) 3 => '317',
(int) 4 => '325',
(int) 5 => '326',
)