在$this->Model->read($fields, $id)中,$fields数组应该是什么样子?


cakewhats the $fields array meant to look like in $this->Model->read($fields, $id)

使用cakephp

我有一个叫做瞳孔的模型

$hasMany = array('PupilAction', 'TransientAction', 'TriageEvent')

$belongsTo = array('FormClass')

在我的瞳孔控制器中我有一个烘焙的

$this->set('pupil', $this->Pupil->read(null, $id));  

我想对结果相关数据进行排序,特别是$hasMany = array('PupilAction', 'TransientAction', 'TriageEvent')元素,按每个名为日期的表中的字段排序。我还想包含全部的信息,我不想限制任何字段的返回,只是让这三个表按日期排序。

我找不到一个如何使用read()的好例子-大多数人似乎使用find,但我想弄清楚这个read()。

有谁能开导我一下吗?

如果您总是需要按日期排序数据,那么在每个模型的PHP文件中添加$order变量。

public $order = 'date';

public $order = ' studentaction . '日期ASC的;

这将确保这些模型在默认情况下为关联、分页和查找返回有序的结果。

否则,您可以为可包含的行为使用order键。确保将Containable行为添加到每个模型的$actAs中(或在您的AppModel.php中)

$record = $this->Pupil->find('first',array(
   'conditions'=>array('Pupil.id'=>$id),
   'contain'=>array('PupilAction'=>array('order'=>'PupilAction.date'))
));