JOIN tabulek + dokumentace

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

zdravím,
sice s Nette začínám, už jsem nad tím proseděl hodně času…
přiznávám že nejsem moc dobrý programátor, ale nějak začít musím.
snažím se udělat takový ůkolníček (podobný co je v ukázce), ale snažím se modifikovat vzorový příklad ale ztroskotal jsem na tom že neumím pracovat s tabulkami databáze (MySQL).
umím udělat dotaz

return $this->connection->query(
„SELECT uzivatele.jmeno, ukoly.id, ukoly.pocet, ukoly.datum_zadani, ukoly.vyrobky_id, vyrobky.nazev
FROM uzivatele
join ukoly on ukoly.id_uzivatele = uzivatele.id
join vyrobky on vyrobky.id = ukoly.vyrobky_id
“);

ale v tomto případě už nelze udělat dotaz přes Where()… to postě do query nejde natlačit :-)
prosím o nějakou dokumentaci a nebo blbovzdorný návod jak joinovat tabulky

koluje tu prezentace

Nette\Database:
chybějící dokumentace
Jan Škrášek
28. dubna, 2012

** http://public.skrasek.com/…_2012_04_28/#1 **
,ale tato dokumentace nefunguje (resp. jen asi do strany 5) prosím o nasdílení funkčního odkazu :-)

vážně potřebuji pomoci, nevím si rady jak to udělat s Nette\Database

moc děkuji za rady

romiix.org
Člen | 343
+
0
-

Rozhodne preštuduj dokumentáciuNette\Database.

V dokumentácií vidno, že je vhodnejšie používať TableSelection:

$this->connection->table("uzivatele");

a tým to v podstate hasne. Joiny a definovanie stĺpcov ktoré sa majú prenášať sa deje na pozadí tak, aby to bolo super optimalizované podla toho, ktoré stĺpce na koniec vypíšeš alebo inak použiješ.

Taktiež na to môžeš zavesiť ľubovolné where:

$this->connection->table("uzivatele")->where("author",1);

Inak, mne tá prezentácia normálne ide (v opere).

Editoval romiix.org (31. 10. 2013 23:55)

David Matějka
Moderator | 6445
+
0
-

ta prezentace nefunguje v chrome, ve ff jde

HappyFace
Člen | 162
+
0
-

romiix.org napsal(a):
Inak, mne tá prezentácia normálne ide (v opere).

prezentacia ide po 5 slide v chrome potom narazi na:

Uncaught SyntaxError: An invalid or illegal string was specified. slides.js:220
buildNextItem
nextSlide

predpokladam, ze tam je najaky preklep niekde