Cakephp PHP WEB開発

【Cakephp2→4】関連モデルcontain内でorder順を定義する

※本サイトはPR表記を含みます。

関連データ内(contain先)でのレコード順序変更はCake2では order、Cake4では sort になります。

キー名が違うのみで、利用の仕方的には同じです。

Cake2: contain内でのorder

$this->Hoge->find('first', [
    'contain' => [
        'Fuga' => ['order' => ['created' => 'DESC']],
    ],
]);

Cake2で contain する Fuga モデルの order を定義してみました。

Cake4: contain内でのsort

$this->Hoges->find()
    ->contain(['Fugas' => ['sort' => ['Fugas.created' => 'DESC']]])
    ->first();

Cake4ではsortというキーにて設定することになります。例に見たように使い方自体はほぼ変わりないので、すんなり利用できるかと思います。

-Cakephp, PHP, WEB開発
-