Nette Database -sql dotaz
Upozornění: Tohle vlákno je hodně staré a informace nemusí být platné pro současné Nette.
- ondrej256
- Člen | 187
Dobrý den,
narazil jsem na zajímavou situaci, Mám tabulku Produkt(id, nazev, …) a Tabulku Obrazek(id, cestaKSouboru,…), Produkt můmě mít víc obrázků, obrázek patří vždy jednomu produktu.
Potřebuju vytvořit v nette database dotaz pro spojení Produktu a Obrazku.
V produktu není cizí klíč na položky obrázku a proto si nevím rady jak dotaz zapsat.
Ono se tu ani žádné joinování nehodí.
Četl jsem, že správně by se místo spojení tří tabulke měly napsat 3 sql dotazy – na každou tabulku zvlášť, ale nevím jak zapsat sql dotaz na získání obrázků zvlášť.
Model
public function getAll()
{
return $this->database->table("product");
}
presenter
public function renderProducts()
{
$this->template->products = $this->productRepository->getAll();
}
sablona
Vypis produktu
foreach{$products as $product}
{$product->name}
// tady bych potreboval vypsat vsechny obrazky (resp. cesty k obrazkum) , ktere jsou v tabulce Obrazek pro dany produkt
{/foreach}
Víte někdo jak dodělat zobrazování obrázků?
- petr.jirous
- Člen | 128
Tak pridej do tabulky Obrazek cizí klíč do tabulky Produkt, např.
takto:
Obrazek(.., Produkt_id)
a pak tvuj kod bude vypadat následovně:
Vypis produktu
foreach{$products as $product}
{$product->name}
// tady bych potreboval vypsat vsechny obrazky (resp. cesty k obrazkum) , ktere jsou v tabulce Obrazek pro dany produkt
{foreach $products->related('Obrazek') as $obrazek}
{/foreach}
{/foreach}