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:
- Przestawienie recursive w modelu: $this->Model->recursive = -1.
- 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) .