Existuje ukážka jednoduchého webu v Nette?
- oktam
- Člen | 25
Ahoj, posledné 4 dni študujem po večeroch Nette. Snažím sa čítať všetky návody, tutorialy … ale po 4 dňoch mám stále pocit, že sa neviem vôbec pohnúť… :-)
Snažím sa študovať príklady atď… Príklady mi síce fungujú ale akosi nie som schopný čokoľvek spraviť sám hoci s otvoreným manuálom…
Existuje niekde návod na postavenie jednoduchej webovej stránky v Nette? Stránka s hlavným menu, 5 podstránok, ktoré zobrazujú obsah článku, jedna zo stránok ma kontaktný formulár, ktorý obsah správy pošle na e-mail… ?
S vysvetlením, že kde sa nachádza ktorý kus kódu a prečo…
Pár rokov programujem s PHP, mám za sebou aj zložitejšie multi-user databázové aplikácie, takže úplný lama hádam nie som :-) no toto mi dáva fakt zabrať. Som presvedčený, že len sa musím do Nette dostať, pochopiť základné princípy a potom to už pôjde, mam ale problém tou bariérou prejsť …
- Ondřej Brejla
- Člen | 746
Nějaký komplexnější návod snad není, nebo o něm nevím. Ale byl by to parádní tutoriál :-) Nejvíc se toho vyčte z examples, případně z Quick Startu nebo ze seriálu na Zdrojáku.
- romansklenar
- Člen | 655
A co příklady v distribuci? Z takového akrabatu / CD-collection musí být základ jasný.
- Cifro
- Člen | 245
romansklenar napsal(a):
A co příklady v distribuci? Z takového akrabatu / CD-collection musí být základ jasný.
To nie je celkom pravda. Zdrojak vôbec nie je okomentovaný. Proste, ten kto sa už vyzná v Nette, tak vie prečo je tam to a to. Ale ostatní nevedia čítať medzi riadkami. A práve tento example je dobrý iba na naučenie ako spraviť prihlasovanie. Není žiadný example, ktorý by riešil taký jednoduchý web ako písal oktam…
posledné 4 dni študujem po večeroch Nette
To je ešte málo, ja študujem už asi mesiac, a furt Nette neviem poriadne, aby mi pomáhalo a nie zdržovalo v niektorých veciach.
Kebyže je niejaký taký tutorial ako tento – CodeIgniter From Scratch: Day 1 tak by krivka prvotného spoznávania Nette bola maximálne strma. O CodeIgniter sa nejako nezaujímam, ale toto jedno video mi dalo jeho úplne základy, kebyže sa chcem poriadne naučiť CodeIgniter tak mam už dobrý základ.
Editoval Cifro (24. 7. 2009 13:39)
- romansklenar
- Člen | 655
Šlo mi spíš o tu ukázku práce s databází, protože jsi o ní psal.
Tutoriál je to hezký :) a po jeho shlédnutí ti můžu říct, že mám dojem, že Code Igniter je oproti Nette jednodušší, sice tam jsou ukázány jen opravdu základy a některé věci půjdou dělat jinak, ale v Nette se dají dělat ty samé věci elegantněji (třeba to předávání proměnných do šablony mě docela dostalo, čekal jsem něco lepšího, konfigurace ve zdrojících v poli taky není nic moc).
Základ je ale ve všech MVC frameworcích stejný. Nějaké ukázky webů napsaných v Nette se tu řešily – mělo jít o kolekci příkladů, které se psaly na jednotlivých školeních.
- Panda
- Člen | 569
Nedávno tomu bylo přesně rok, co jsem sám udělal první nesmělé krůčky do Nette, takže tomu není zas tak dávno, co jsem sám měl podobné problémy.
Do napsání takového příkladu bych se klidně pustil. Jediné, s čím váhám, je kam to v dokumentaci zařadit. Pak bych také potřeboval posvěcení z míst vyšších, že s něčím takovým dokumentaci vůbec mohu znesvětit. :)
Viděl bych to tak, že bych tam postupně prošel tvorbou jednoduchého webu s víceuživatelskou administrací a mimo jiné ukázal:
- práce s komponentami (využití existujících – formulář, VisualPaginator, možná i nějaká jednodušší vlastní komponenta)
- tvorba vlastního jednoduchého routeru
- AJAX (+ zavináčová magie?)
Napadá vás ještě něco, co by se tam dalo použít?
- Cifro
- Člen | 245
romansklenar napsal(a):
Šlo mi spíš o tu ukázku práce s databází, protože jsi o ní psal.
Hm prácu s databázou som nemyslel, len to prihlasovanie, a to nemusí byť riešené cez db…
Tutoriál je to hezký :) a po jeho shlédnutí ti můžu říct, že mám dojem, že Code Igniter je oproti Nette jednodušší…
..konfigurace ve zdrojících v poli taky není nic moc …
Presne to isté som si myslel aj ja :D V niečom je jednoduchší, ale tie konfiguračné polia sa mi tiež nepáčili.
- Hellish
- Člen | 16
CodeIgniter vypadá na první pohled jednoduše, ale má hodně nedomyšlených/nedořešených věcí. Udělal jsem v něm jeden web, ale po prvotním prozkoumání Nette je jasné, že Nette je mnohem důmyslněji a výrazně lépe navržené. Jedinné, co má CodeIgniter lépe zpracované je dokumentace, která je psaná jako tutorial krok za krokem, takže základy frameworku pochopí rychle i úplný začátečník. Tohle by mělo Nette dohnat. Takový step-by-step tutorial na vytvoření jednoduchého webu/blogu by určitě uvítala spousta začátečníků.
- David Grudl
- Nette Core | 8227
Už jsem to někde zmiňoval, celý srpen mám vyhrazený na napsání dokumentace (i anglické). Tedy po prázdninách i tato námitka konečně padne ;,
- FOUS
- Člen | 15
To by bylo skvělé. Teď jsem se zrovna s jedním webem mořil. Co bych ve svém frameworkčíčku a špagety kódem zbastlil za dva dny jsem v Nette dělal týden a stejně jen začal a nedodělal. Samozřejmě vše nastudováno, školení absolvováno, ale všude to jsou jen kousky kódu a pokud začínáte jako já trojkombinací (nový v OOP + nový v MVC + nový v Nette) je to na provaz, protože plavete v tom, jak to pospojovat. Na druhou stranu smekám před pomocí lidí tady na fóru, takže všechny záseky se podařilo řešit.
- JakubJarabica
- Gold Partner | 184
David Grudl napsal(a):
Už jsem to někde zmiňoval, celý srpen mám vyhrazený na napsání dokumentace (i anglické). Tedy po prázdninách i tato námitka konečně padne ;,
Som rad, ze nie som sam, ktoremu aktualna dokumentacia nestaci :) Pozeram dokola serial v roote, dokumentaciu mam vytlacenu, forum sledujem cez RSS, no stale malo. Mam velky problem s riesenim dost jednoduchych uloh. Preto dufam, ze dokumentacia bude aktualizovana postupne(nech to mozeme v priebehu mesiaca studovat) a bol by som este radsej, keby je kladeny doraz na priklady, ale z realnej praxe. Velmi napr. ocenujem, ze David niekde na fore uviedol svoj router, z toho sa clovek nauci najviac :)
- oktam
- Člen | 25
Je ten sampel mozne vidiet/stiahnut?
Panda napsal(a):
Tak jsem právě dopsal první část návodu – funkční web s několika stránkami a kontaktním formulářem, který odesílá e-maily. Pokračovat budu vlastním routerem a administrací.
Zkusím se nějak s Davidem dohodnout na zařazení do dokumentace.
- xzajic
- Člen | 19
Jsem všema deseti pro nějaké hotové examples. Co by – aspoň podle mě – moc pomohlo by byla kostra nějakého e-shopíku. Shopy totiž obsahují poměrně různorodou logiku (narozdíl třeba od chatu) – přihlášení, zobrazení nečeho z databáze, objednávání, košík, e-maily… a kdyby se to nějak ukázkově pořešilo v příkladu (bez grafiky, jen v nějakých náznacích) tak by to mohl být skvělý výukový materiál.
Editoval xzajic (28. 7. 2009 9:56)
- Jan Tvrdík
- Nette guru | 2595
Pokud byste sháněli skutečně velmi jednoduchou ukázku (takový složitější akrabat), tak lze použít i http://skladka.merxes.cz/…09-05-18.zip. Je to psáno pro trochu starší revizi Nette, ale mělo by to fungovat. Asi nejzajímavější z celého kódu je napsání vlastního jednoduchého routeru.
- Jan Tvrdík
- Nette guru | 2595
marek.dusek napsal(a):
OT: ceskoAnglictina je evil ;)
Neboj, v žádném skutečném kódu takové názvy nevolím. Tento kód je
psán úmyslně takovou formou, jakou psán a stejně tak jsou voleny i názvy
jako např. NasOverovac
:)
- ic
- Člen | 430
Mohl bych mít začátečnický dotaz (trochu mimo téma samozřejmě) k ukázce, jinak samozřejmě za ni děkuji, co dělají soubory (NasOverovac.php a ClankyRouter.php) ve složce libs? Tožiž měl jsem za to (podle dosavadně získaných informacé) že všechny části prezentace jsou jen v app a v doc-rootu pak jen ‚uživatelsky dostupné‘ soubory a obrázky no a že zmiňovaná složka libs je pak jen na hotové řešení (nette a jiné aplikace třetích stran). Najde je tam vůbec robot loader nebo se musí naincludovat samostatně?
- Jan Tvrdík
- Nette guru | 2595
ic napsal(a):
Mohl bych mít začátečnický dotaz (trochu mimo téma samozřejmě) k ukázce, jinak samozřejmě za ni děkuji, co dělají soubory (NasOverovac.php a ClankyRouter.php) ve složce libs? Tožiž měl jsem za to (podle dosavadně získaných informacé) že všechny části prezentace jsou jen v app a v doc-rootu pak jen ‚uživatelsky dostupné‘ soubory a obrázky no a že zmiňovaná složka libs je pak jen na hotové řešení (nette a jiné aplikace třetích stran). Najde je tam vůbec robot loader nebo se musí naincludovat samostatně?
Pravděpodobně by měly být spíš ve složce app.
- Ondřej Mirtes
- Člen | 1536
Navíc pokud dám indexovat celou složku libs
, tak se mi tam
tlučou dvě třídy, které jsou zároveň v balíku s dibi
a
zároveň v balíku Nette
.
- Jan Tvrdík
- Nette guru | 2595
LastHunter napsal(a):
Navíc pokud dám indexovat celou složku
libs
, tak se mi tam tlučou dvě třídy, které jsou zároveň v balíku sdibi
a zároveň v balíkuNette
.
Netlučou, dibi obsahuje soubor netterobots.txt
- Ondřej Mirtes
- Člen | 1536
Jan Tvrdík napsal(a):
LastHunter napsal(a):
Navíc pokud dám indexovat celou složku
libs
, tak se mi tam tlučou dvě třídy, které jsou zároveň v balíku sdibi
a zároveň v balíkuNette
.Netlučou, dibi obsahuje soubor netterobots.txt
Tak už je to možná opravené, ale ta chyba se mi opravdu stala, od té doby ty složky v bootstrapu registruju takhle:
$autoload->addDirectory(array(LIBS_DIR . '/Dibi', LIBS_DIR . '/Texy', APP_DIR));
- Majkl578
- Moderator | 1364
Sliboval jsem ukázku chatu, tak tady je.
Jedná se o jednoduchý systém chatu, každý člověk, který chce chatovat se prvně registruje. Po registraci je možné se ihned přihlásit.
** Požadavky:**
- PHP 5.3
- Je nutné nastavit složkám cache, log a sessions práva pro zápis.
- Dále je třeba spustit SQL příkaz (je v archivu – AjaxChat/ajaxchat.sql) a příslušně upravit config.ini v sekci production → database.
- Ponechání informace o autorovi v patičce nebo alespoň v komentáři v html (pokud si to přestylujete, což předpokládám, „grafika“ můžete odstranit)
Chat podporuje rozlišení uživatelů jako normální (default) nebo administrátor. Pro nastavení uživatele jako administrátora je to (zatím) nutné nastavit přímo v tabulce v databázi (chat_users > isAdmin). Administrátor může mazat zprávy.
Živá ukázka: http://server.majkl578.cz/AjaxChat/
Odkaz ke stažení: http://nette.majkl578.cz/AjaxChat.rar
Berte to prosím tak, že se s Nette stále učím (tím chci říct, že některé věci by určitě šly lépe a já se rád dozvím které a jak ;) ). Mimochodem ajax jsem teď použil poprvé. :)
EDIT: sodae měl nápad udělat to jako komponentu, co vy na to?
Editoval Majkl578 (30. 7. 2009 22:21)
- Cifro
- Člen | 245
Majkl578 napsal(a):
Živá ukázka: http://server.majkl578.cz/AjaxChat/
Odkaz ke stažení: http://nette.majkl578.cz/AjaxChat.rar
Pekná práca. A nenapadlo by ma spojiť nettelinks a {}filter :) Šikovná myšlienka. A chválim aj pridanie Nette do rar, lebo sa mi stalo, že nebolo priložené a som nevedel na akej revizii to vlastne funguje.
- Jan Tvrdík
- Nette guru | 2595
mardon napsal(a):
tak jsem se rozhodla , že vyzkouším clanky, ale hned po spuštění se mi objeví chbové hlášení
Fatal error: Class ‚dibi‘ not found in /var/www/clanky/app/bootstrap.php on line 52
Zkus smazat temp.
- mardon
- Člen | 59
Jan Tvrdík napsal(a):
mardon napsal(a):
tak jsem se rozhodla , že vyzkouším clanky, ale hned po spuštění se mi objeví chbové hlášení
Fatal error: Class ‚dibi‘ not found in /var/www/clanky/app/bootstrap.php on line 52
Zkus smazat temp.
smazala jsem a stejná chyba, řekla bych, že problém bude možná v nějakém nastavení, protože mi nefunguje ani přiklad v quick start a ani akrabat
tak ten Quick start beru zpět nedočetla jsem celou stránku
Editoval mardon (31. 7. 2009 21:52)
- JakubKohout
- Člen | 92
mardon napsal(a):
Fatal error: Class ‚dibi‘ not found in /var/www/clanky/app/bootstrap.php on line 52
Měl sem tu samou chybu, po úpravě kódu sem přišel na to že RobotLoader.php neloaduje žadný soubory, tak sem si s tim hrál až to úplně rozkurvil … Znova sem ty články stáhl a po přepsání všech souborů na mě baflo z apache permission denied … tak sem nastavil všechny soubory na 777 a hle všechno funguje :-)
Ale je tam spousta dalších chyb … například to v DB po mě chce sloupec URL v tabulce clanky apod.
Edit: Tak už sem to dostal do funkční podoby, ještě je třeba zakomentovat v bootstrap.php tu routu s ClankyRouter … tak snad to někomu pomůže až bude zkoušet ten příklad
Jinak díky za příklad, do teď sem měl problém jako spousta kolegů nademnou s tim co jak poskládat dohromady a tohle mi ukázalo cestu. Díky moc
Editoval dRaGen (1. 8. 2009 4:48)
- mardon
- Člen | 59
dRaGen napsal(a):
mardon napsal(a):
Fatal error: Class ‚dibi‘ not found in /var/www/clanky/app/bootstrap.php on line 52Měl sem tu samou chybu, po úpravě kódu sem přišel na to že RobotLoader.php neloaduje žadný soubory, tak sem si s tim hrál až to úplně rozkurvil … Znova sem ty články stáhl a po přepsání všech souborů na mě baflo z apache permission denied … tak sem nastavil všechny soubory na 777 a hle všechno funguje :-)
Ale je tam spousta dalších chyb … například to v DB po mě chce sloupec URL v tabulce clanky apod.
Edit: Tak už sem to dostal do funkční podoby, ještě je třeba zakomentovat v bootstrap.php tu routu s ClankyRouter … tak snad to někomu pomůže až bude zkoušet ten příklad
Jinak díky za příklad, do teď sem měl problém jako spousta kolegů nademnou s tim co jak poskládat dohromady a tohle mi ukázalo cestu. Díky moc
diky moc, pomohlo nastavit prava pro vsechny soubory na 777, jedu totiz na kubuntu, uz se mi to rozbehlo. Jaké je heslo pro přihlášení? Háže to dost vyjímek
- aha
- Člen | 9
Ahoj,
jak to tedy vypadá s nějakým tím tutoriálkem, nebo screencastem?
Bude v dohledné době něco? Já se chci s Nette naučit a vyzkoušel jsem (a
rozchodil) všechny tuty, nicméně stejně jako kolegové výše si nedokážu
dost dobře představit, jak to využít v plném rozsahu pro tvorbu www
stránek.
V současné době jsem si vytisknul okomentovaný tutoriál Akrabat pro ZendFramework:http://pari.cz/…framework-15 a zkouším pochopit co se to vlastně děje. Zatím nevím jak se mi to osvědčí.
P.S. Já bych uvítal nějaké jednoduché „zastřešení“ Nette a jeho možností použití. Takhle si vždycky připadám, jako když sleduji diskusi automechaniků nad rozebraným karburátorem o jeho přednostech a nedostatcích a já přitom ani nevím jestli patří do motoru, do kabiny, nebo do kufru. Možná jsem se nevyjádřil úplně přesně, ale mám pocit, že tento problém tady trápí víc lidí.
- DocX
- Člen | 154
aha napsal(a):
Ahoj,
jak to tedy vypadá s nějakým tím tutoriálkem, nebo screencastem?
…
Doufám, že se to brzy také nějak pohne.
Ale sám jsem (plus ještě s kolegy) s Nette začal celkem nedávno. A taky jsem si tohle říkal dokud jsme si prostě neřekli, že nad tim uděláme náš další projekt. Pak už to všechno tak nějak vyplyne samo co umí a co ne. Hodně úskalí se dá taky vyřešit za pomoci solidní komunity tady na fóru. Jinak je samozřejmě stále co zlepšovat a sám se snažím komunitě něco vracet (třeba i tímhle postem)
Chci tím říct, že než čekat na tutoriál, rači ten čas obětuj tomu, že začneš na Nette stavět nějakou skutečnou aplikaci a pak poznáš sám, k čemu je dobré :)
Editoval DocX (23. 9. 2009 19:37)
- aha
- Člen | 9
to DocX:
Já se také snažím, ale bohužel kolegů nemám, s PHP začínám (měsíc
na tom intenzivně pracuju), s Nette taky. Hledám tedy nějakou
„cestičku“, která by mi osvětlila zákonitosti fungování Frameworku.
Z kusých info si udělá představu člověk, který už o problematice něco
ví a má základ pro to, něco si domyslet a dokombinovat. Z nám to
z jiných oblastí. Nicméně ten okomentovaný Akrabat v ZF (viz. výše) už
určitou představu dává. Ale je to málo. Asi tak.
- DocX
- Člen | 154
No pokud začínáš i s PHP jako takovým (případně i s principy OOP (které v PHP taky nejsou úplně štastně řešeny)), tak tě naprosto chápu, že skočit po hlavě do věci jako Nette může být trochu problematické.
Je ale dobře, že sis tak zvolil, protože Nette za tebe vyřeší věci, na které ty by jsi musel přicházet sám a mohl by jsi v nich hlavně udělat chyby.
A souhlasím, že dobře okomentovaný kousek dobrého kódu chytrému člověku hodně pomuže s pochopením problematiky. Přikláním se k tomu, aby se alespoň nějak pěkně okomentoval kód v těch 2 (?) příkladech v Nette. Nejsou přeci tak rozsáhlé aby to nešlo. Otázka ale je jestli komentovat česky nebo anglicky :o)
Jestli se budu někdy nudit, zkusím to okomentnout a hodit sem a doufat, že to někdo hodí do distra. To ale předbíhám :D
Editoval DocX (23. 9. 2009 20:12)