CakePHP5 の日本語チュートリアルでハマったら英語版を見よう!

追記: プルリクが取り込まれたのでこのページの内容は本家見れば OK になりました。

引続き、CakePHP5 のチュートリアルを進行してますが、どうもコードサンプルが古いバージョンのもののようです。そのため、少しハマりました。まあ、英語版見ろよと。。。

具体的には CMS チュートリアル – Articles コントローラーの作成 – 5.x の ArticleController の paginator 部分でエラーが発生します。

英語版 を見てみるとコードが違っていました。こんな感じです。

<?php
// src/Controller/ArticlesController.php

namespace App\Controller;

class ArticlesController extends AppController
{
    public function index()
    {
        $articles = $this->paginate($this->Articles);
        $this->set(compact('articles'));
    }
}

paginate はコンポーネントではなくてそもそも組み込まれているようです。日本語版のドキュメントにプルリクだしましたが、英語力が怪しすぎるので蹴られるかもしれません。

わりとちゃんと翻訳されてそうな雰囲気だったので盲信してチュートリアル進めてきたのですが、思わぬ落とし穴に突き当たりました。せめてチュートリアルページだけでもちゃんと整備しておかないとますます CakePHP の不人気に拍車がかかりそうだなと感じた一幕でした。