Mikuláš je tu! Získaj 90 % extra kreditov ZADARMO s promo kódom CERTIK90 pri nákupe od 1 199 kreditov. Len do nedele 7. 12. 2025! Zisti viac:
NOVINKA: Najžiadanejšie rekvalifikačné kurzy teraz s 50% zľavou + kurz AI ZADARMO. Nečakaj, táto ponuka dlho nevydrží! Zisti viac:

Diskusia – 6. diel - Jednoduchý redakčný systém v Nette - Výpis článku

Späť

Upozorňujeme, že diskusie pod našimi online kurzami sú nemoderované a primárne slúžia na získavanie spätnej väzby pre budúce vylepšenie kurzov. Pre študentov našich rekvalifikačných kurzov ponúkame možnosť priameho kontaktu s lektormi a študijným referentom pre osobné konzultácie a podporu v rámci ich štúdia. Toto je exkluzívna služba, ktorá zaisťuje kvalitnú a cielenú pomoc v prípade akýchkoľvek otázok alebo projektov.

Komentáre
Posledné komentáre sú na spodnej časti poslednej stránky.
Avatar
Jindřich Máca
Tvůrce
Avatar
Odpovedá na Honza67
Jindřich Máca:13.7.2015 12:15

To je dobrá otázka. :-) Vyplývá to částečně z toho, že PHP je dynamicky typovaný jazyk. Já tam tyhle use mám, jenom proto, že je uvádím v komentářích a moje IDE (PhpStrorm) je tam pak automaticky přidá, kvůli napovídání, typové kontrole atd.

Důležité je, že v kódu, jako takovém, nikde použity nejsou a právě díky tomu a dynamickému typování to bude fungovat i když je tam explicitně neuvedu. ;-)

Avatar
Honza67
Člen
Avatar
Honza67:13.7.2015 14:18

Děkuji za odpověď, a chtěl jsem tě ještě poprosit jestli bys nemohl (pro všechny začínající v nette) ,pokud v kódech dalších dílů použiješ nějakou anotaci, která není jen komentářem, alespoň stručně objasnit co a jak dělá. Myslím si, že nám to pak určitě zkrátí dobu učení když nebudeme muset hledat co je vlastně jen komentář a co je důležitá součást kódu, bez které se např. nějaká metoda vůbec neprovede..Vypadá to, že do tohodle dílu tam naštěstí žádná taková anotace není. Snad se nepletu :-).

Avatar
Jindřich Máca
Tvůrce
Avatar
Odpovedá na Honza67
Jindřich Máca:13.7.2015 14:30

V podstatě nejpoužívanější důležitá anotace v Nette je @inject a ta zde doposud použita nebyla. :-) Každopádně až jí, či nějakou jinou použiju, určitě k tomu napíšu poznámku, minimálně v článku pod kódem. Ostatně tak to dělám vždy, ke všemu důležitému nebo zajímavému, to se neboj. ;-)

Jinak obecně k mazání komentářů přeci není žádný důvod a pokud Ti něco nefunguje, můžeš si vždy stáhnout originální kód v archivu pod článkem nebo se zeptat zde v komentářích. ;-)

Editované
Avatar
Honza67
Člen
Avatar
Honza67:13.7.2015 14:48

Dobře. Děkuju a těším se(a určitě ne jen já) na dlouhé pokračování seriálu..:-)

Avatar
apincik
Člen
Avatar
Odpovedá na Samik11
apincik:15.7.2015 12:21

Tiež som spájal modely logicky niekedy ale pri väčšom projekte to je hnus, oveľa lepšie je mať model pre každú tabuľku :)

Avatar
apincik
Člen
Avatar
apincik:15.7.2015 12:28

Ešte k tomu modelu, v práci som sa dostal k pomerne čistému riešeniu, v base class modelu sa využívala __call metóda a na základe toho sa volali ostatné metódy, názov tabuľky atď sa doplnili, nemusíš v každej odvodenej triede manager, article .. písať getManager, getArticle. Pri pár volaniach to nespomalí kód a ušetríš si aj písanie.

GetArticle s parametrom by som konvečne nazval getArticleByXXX :) A getArticles, niekto bude chcieť ASC zoradenie tak si bude musieť prepísať tú metódu, moc znovupoužiteľné mi to nepríde :) zas volať order na objekte v presenteri tiež nieje bloody clear ale to už je na každom :)

Avatar
Jindřich Máca
Tvůrce
Avatar
Odpovedá na apincik
Jindřich Máca:15.7.2015 13:36

Ano, metoda by se měla spíše getArticleBy** a *getArticles by v rámci znovupoužitelnosti měli mít na výběr ve způsobu řazení. I když jsou to detaily, tak budiž, pak to opravím. :-) A samozřejmě díky za připomínky. ;-)

Co se týče použití metody __call, ano je to způsob řešení, ale jelikož je tohle tutorial spíše pro začátečníky, radši bych se držel standardního jednoduchého způsobu a tyhle vychytávky bych si nechal třeba na později. ;-)

Avatar
Jindřich Máca
Tvůrce
Avatar
Odpovedá na Jindřich Máca
Jindřich Máca:20.7.2015 1:23

Tak jsem o tom ještě přemýšlel a nakonec to nechám tak, jak to je, s tím, že to důležité je uvedeno zde v komentářích. ;-)

Věc se má asi takhle, metoda getArticles je zde pouze na ukázku a nikde se znovu používat nebude a přejmenování getArticle na *getArticleBy** je pouze kosmetický detail, který lze napravit v dobrém IDE do pár sekund. Na druhou stranu, já bych to musel měnit nejen zde, ale i ve všech následujících článcích s tím, že pokud už to má někdo naprogramované popř. stažené, tak mu to přestane fungovat jen kvůli přejmenování metody a on bude muset pracně dohledávat proč...

Tímto se tedy omlouvám a děkuji za pochopení! :-)

Avatar
pepapavlik
Člen
Avatar
pepapavlik:20.7.2015 23:09

Ahoj,

mám jen takovou menší otázečku.

v článku se píše:

" Nám zde bude stačit vytvořit si novou databázi, kterou použijeme pro náš projekt, a v ní spustíme upravený SQL skript, který opět naleznete v archivu pod názvem create_script.sql. Jeho obsah je následující: "

(... OBSAH SKRIPTU...)

dále je pak

"Ten nám vytvoří a naplní tabulku s články, kterou budeme příště potřebovat. A nakonec nastavíme v Nette přístup do naší databáze."

A mě jen zajímá, jak tedy ten skript spustit, aby se vytvořily ty tabulky? Možná je to již někde napsáno, a já to nějako přehlédl...

Avatar
Odpovedá na pepapavlik
Martin Konečný (pavelco1998):20.7.2015 23:12

Ahoj,

ve článku je uvedeno, že se script nachází v souboru 'create_script.sql' v přiloženém archivu.
Mělo by v tom případě stačit ten soubor nahrát třeba pomocí adminera nebo phpmyadmin :) (tzv. import)

Odpovedať
Aktuálně připravuji browser RPG, FB stránka - https://www.facebook.com/AlteiraCZ
Posledné komentáre sú na spodnej časti poslednej stránky.
Robíme čo je v našich silách, aby bola tunajšia diskusia čo najkvalitnejšia. Preto do nej tiež môžu prispievať len registrovaní členovia. Pre zapojenie sa do diskusie sa zaloguj. Ak ešte nemáš účet, zaregistruj sa, je to zadarmo.

Zobrazené 10 správy z 105.