システム
- CakePHP 2.x
データベース
Houses --> id, name
Visits --> id, date, house_id
モデル
Visit belongsTo House
House hasMany Visit
意見
- 私はhouses/index.ctpと呼ばれるすべての家のビューを持っています。
- 各家とそのIDと名前が一覧表示されます。
- また、PaginatorHelperを使用して配列を並べ替えます。
問題
- 彼らが最後に訪れた家ごとに見たいです。
- これは、PaginatorHelperによってソート可能である必要があります
試行
virtualFieldsでできると思いましたが、失敗しました(常にすべての家の最大値を返します)。
public $virtualFields = array('lastvisit' => 'SELECT MAX(visits.date) FROM visits, houses WHERE houses.id = visits.house_id GROUP BY house_id');
Housesテーブルの新しい列に各最大訪問数を「キャッシュ」しようとしましたが、非常に汚れています。
助けてくれてありがとう。