CakePHP 3 sortowanie po polu powiązanego modelu

Pokażę jak dodać sortowanie po powiązanym modelu w CakePHP. Załóżmy, że mamy np. model Users, który jest powiązany jeden do jednego z Distributors. Chcemy posortować użytkowników po polu description z modelu Distributors. Najpierw w kontrolerze modelu głównego (Users) dodajemy następujące opcje do paginate.

$this->paginate = [
    'contain' => ['Distributors'],
    'sortWhitelist'=>['Distributors.description']
];
W widoku na liście użytkowników link sortujący wygląda następująco.
$this->Paginator->sort('Distributors.description', __('Opis'));