W modelu Cake jest metoda findBy<fieldName>, która pozwala pobierać dane z bazy na podstawie atrybutu “fieldName”. Prawie wcale nie używałem tej metody, ale okazała się ona dzisiaj pomocna. Okazało się też, że metoda działa z parametrem “recursvie=1”, co w moim przypadku niepotrzebnie pobierało dane z powiązanego modelu. Książka Cake o “recursive” w kontekście tej metody nic nie mówi: http://book.cakephp.org/#!/view/1026/findBy. Pomógł mi wątek na grupie Cake.

Metody przestawienia “recursive” są co najmniej dwie:

  1. Przestawienie recursive w modelu: $this->Model->recursive = -1.
  2. Skorzystanie z odpowiedniego parametru opisywanej metody (o którym książka Cake miliczy): findBy<fieldName>($value, $fields=null, $order=null,
    $limit=null, $page=null, $recursive=null) .