Mysql
 sql >> Baza danych >  >> RDS >> Mysql

Lista wyszukiwania CakePHP z powiązanymi warunkami modelu

Problem z twoim pożądanym wynikiem polega na tym, że Cake nie zwróci ci obciętej tablicy wyników, jeśli użyjesz warunków w powiązanych modelach.

Dzieje się tak, ponieważ Cake użyje tych warunków tylko w powiązanym modelu i zwróci wyniki z warunkami spełnionymi w powiązanych modelach.

Jeśli chcesz odzyskać produkty tylko z określoną kategorią, musisz wykonać zapytanie za pomocą modelu kategorii, ponieważ daje to możliwość użycia warunków dla twoich produktów. To może wyglądać mniej więcej tak:

$this->Category->find('all', array('conditions' => array('Category.id' => 2));

W ten sposób zwrócisz tylko żądaną kategorię i powiązane z nią produkty. Nie jest to jednak zbyt satysfakcjonujące, jeśli chcesz otrzymać listę, ponieważ musisz ręcznie wykonać konwersję.

Wolałbym przyjrzeć się wtyczce, którą można łączyć co powinno dać ci dokładnie pożądaną funkcjonalność, ponieważ rozszerza Cake o używanie złączeń, tak jak to zrobiłeś w zapytaniu. Umożliwia to uzyskanie wyników z warunkami na powiązanych modelach.



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Polecenie odchylenia standardowego w SQL

  2. eksportuj duże dane z tabeli danych do pliku .csv w aplikacjach c# windows

  3. Jak połączyć się z serwerem mysql za pomocą Go i go-sql-driver?

  4. Wykonanie następującego zapytania trwa zbyt długo. Jak to zoptymalizować

  5. jak uzyskać rekurencyjny wynik, wysyłając zapytanie do tabeli odwołującej się do siebie w mysql?