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 の不人気に拍車がかかりそうだなと感じた一幕でした。