お世話になります。CakePHP3で投稿サイトを制作中です。あるキーワードを元に検索した内容をrankingページに表示させようと考えています。その表示させた記事に対し、他ユーザーのコメントした内容とあわせ、コメント投稿者のニックネームも表示させたいと考えていますが、ニックネームの情報取得ができず、困っています。

▽環境▽
AWS Cloud9:無料枠
MySQL:ver5.7.26
CakePHP:ver3.8.2
PHP:ver7.2.19

▽現在のMySQLのテーブル構造です▽

mysql> show create table users\G
*************************** 1. row ***************************
       Table: users
Create Table: CREATE TABLE `users` (
  `id` int(11) NOT NULL AUTO_INCREMENT,
  `email` varchar(255) NOT NULL,
  `password` varchar(255) NOT NULL,
  `nickname` varchar(30) NOT NULL,
  `profiel_comment` varchar(100) NOT NULL,
  `created` datetime DEFAULT NULL,
  `modified` datetime DEFAULT NULL,
  PRIMARY KEY (`id`)
) ENGINE=InnoDB AUTO_INCREMENT=4 DEFAULT CHARSET=utf8mb4
1 row in set (0.00 sec)    mysql> show create table ices \G

*************************** 1. row ***************************
       Table: ices
Create Table: CREATE TABLE `ices` (
  `id` int(11) NOT NULL AUTO_INCREMENT,
  `user_id` int(11) NOT NULL,
  `manufacturer` varchar(50) NOT NULL,
  `ice_name` varchar(50) NOT NULL,
  `ice_fraver` varchar(50) NOT NULL,
  `price_no_tax` int(5) unsigned NOT NULL,
  `buy_year` int(4) unsigned NOT NULL,
  `buy_month` int(2) unsigned NOT NULL,
  `image_file` varchar(255) DEFAULT NULL,
  `created` datetime DEFAULT NULL,
  `modified` datetime DEFAULT NULL,
  `simple_comment` varchar(20) NOT NULL,
  `desc_comment` varchar(100) NOT NULL,
  `repeat_rate` int(11) DEFAULT NULL,
  `stock_rate` int(11) DEFAULT NULL,
  PRIMARY KEY (`id`),
  KEY `ice_fk` (`user_id`),
  CONSTRAINT `ice_fk` FOREIGN KEY (`user_id`) REFERENCES `users` (`id`) ON DELETE CASCADE ON UPDATE CASCADE
) ENGINE=InnoDB AUTO_INCREMENT=14 DEFAULT CHARSET=utf8mb4
1 row in set (0.00 sec)

mysql> show create table comments \G
*************************** 1. row ***************************
       Table: comments
Create Table: CREATE TABLE `comments` (
  `id` int(11) NOT NULL AUTO_INCREMENT,
  `ice_id` int(11) NOT NULL,
  `user_id` int(11) NOT NULL,
  `comment` varchar(100) NOT NULL,
  `repeat_rate` int(11) DEFAULT NULL,
  `stock_rate` int(11) DEFAULT NULL,
  `created` datetime DEFAULT NULL,
  `modified` datetime DEFAULT NULL,
  PRIMARY KEY (`id`),
  KEY `comments_fk` (`user_id`),
  KEY `comments_ices_fk` (`ice_id`),
  CONSTRAINT `comments_fk` FOREIGN KEY (`user_id`) REFERENCES `users` (`id`) ON DELETE CASCADE ON UPDATE CASCADE,
  CONSTRAINT `comments_ices_fk` FOREIGN KEY (`ice_id`) REFERENCES `ices` (`id`) ON DELETE CASCADE ON UPDATE CASCADE
) ENGINE=InnoDB AUTO_INCREMENT=37 DEFAULT CHARSET=utf8mb4
1 row in set (0.00 sec)

▽/src/Controller/IcesController.php▽

class IcesController extends AppController
{
    public function initialize()
    {
    parent::initialize();
    $this->Auth->allow(['index','view','search']);
    $this->loadModel('Comments');
    $this->loadModel('Users');

    }
~一部省略~
public function search()
    {
        $ices = $this->Ices->find('all');
        $manufacturer = isset($this->request->query['manufacturer']) ? $this->request->query['manufacturer'] : null;
        $keyword = isset($this->request->query['keyword']) ? $this->request->query['keyword'] : null;

        if($manufacturer){
            $where = ['Ices.manufacturer' => $manufacturer];
            if ($keyword) {
            $where['OR']['Ices.ice_fraver LIKE'] = "%$keyword%";
            $where['OR']['Ices.simple_comment LIKE'] = "%$keyword%";
            }                             
            $ices->where($where)
            ->contain(['Users','Comments'])
            ->all();
            $this->set('manufacturer', $manufacturer);
            $this->set('keyword', $keyword);
            $this->set('ices', $ices);
            $this->render('ranking');
    }
    }

上記の内容で現在、記述しています。

Icesテーブルの、manufacturer、もしくはmanufacturerとice_fraver、manufacturerとsimple_commentのいずれかの組み合わせで検索をし、
rankingに該当するIcesテーブルの情報+紐づくCommentsテーブルの情報、
さらにそのコメントをしたComementsテーブルのuser_idにひもづくUsersテーブルのnicknameの取得が目的です。

既にアソシエーション関連の記述の変更が必要と思い、
https://book.cakephp.org/3.0/ja/orm/associations.html
https://book.cakephp.org/3.0/ja/orm/retrieving-data-and-resultsets.html#eager-loading-associations
↑の内容は確認しましたが、要望に対しての記述方法について、
現在記載済みのコードのどこをどう変更すればよいか、わからない状況が続いています。

現在の状態から、どう記述を変更していけばよいか。
ご教示をお願いいたします。