sql >> Database teknologi >  >> RDS >> Mysql

CakePHP find liste med relaterede modelforhold

Problemet med dit ønskede resultat er, at Cake ikke vil give dig et strippet resultatarray tilbage, hvis du bruger betingelser på dine relaterede modeller.

Dette sker, fordi Cake kun vil bruge disse betingelser på din relaterede model og give dig resultaterne tilbage med betingelser, der er sande på dine relaterede modeller.

Hvis du ønsker at få produkter tilbage med kun en bestemt kategori, skal du forespørge gennem Kategori-modellen, da dette giver dig mulighed for at bruge betingelserne på dine produkter. Dette kunne se sådan ud:

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

Dette giver dig kun den ønskede kategori og dens tilknyttede produkter tilbage. Dette er dog ikke særlig tilfredsstillende, hvis du vil have en liste, fordi du skal udføre konverteringen manuelt.

Jeg vil hellere tage et kig på Linkable Plugin som skulle give dig præcis den ønskede funktionalitet, da det udvider Cake i at bruge joins, som du gjorde i din forespørgsel. Dette gør det muligt at opnå resultater med forhold på dine relaterede modeller.



  1. databaseforbindelse virker ikke i jar, men virker i eclipse

  2. PostgreSQL:Deaktiver midlertidigt forbindelser

  3. Konverter mysql-database til Oracle

  4. PHP MySQL - Sådan indsætter du standardværdi i en forberedt erklæring