Složený dotaz ze dvou tabulek

Upozornění: Tohle vlákno je hodně staré a informace nemusí být platné pro současné Nette.
batko
Člen | 219
+
0
-

Ahoj,

mám klasický případ tabulku s PRODUKTY, KATEGORIEMI a MOST mezi nimi

V mostu je uložena informace v jakých kategoriích je produkt uložen.

Potřeboval bych udělat následující prostup

  • dle ID kategorie vrátit ID produktů
  • a na tomto základě vrátit produkty

mám toto a to moc nejde

<?php
  public function getProducts($id) {
        $p = $this->productCategoryBridgeRepository->findBy(array("productcategory_id" => $id));
        return $this->productRepository->findBy(array("id" => $p));
    }
?>

Editoval batko (5. 1. 2014 15:54)

batko
Člen | 219
+
0
-

ty tabulky jsou

product
productcategory
productcategorybridge

a zkouším toto a nejde

<?php
 return $this->productRepository->findBy(array("productcategorybridge.productcategory_id" => $id));
?>
David Matějka
Moderator | 6445
+
0
-

verze nette?

pro >= 2.1

return $this->productRepository->findBy(array(":productcategorybridge.productcategory_id" => $id));

pro 2.0

return $this->productRepository->findBy(array("productcategorybridge:productcategory_id" => $id));
batko
Člen | 219
+
0
-

matej21 napsal(a):

verze nette?

pro >= 2.1

return $this->productRepository->findBy(array(":productcategorybridge.productcategory_id" => $id));

pro 2.0

return $this->productRepository->findBy(array("productcategorybridge:productcategory_id" => $id));

funguje jako vždy :-) děkuju moc

batko
Člen | 219
+
0
-

přeci jenom ještě malý dotaz
v šabloně vypisuji produkty

{foreach $products as $p}
{$p->product->name}
{/foreach}

šlo by udělat nějak aby to bylo

{foreach $products as $p}
{$p->name}
{/foreach}