Zamyšlení – zmatení začátečníci?

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

Zdravím,
mám dojem, že současná situace s Nette je pro začátečníky velmi zmatená. Stáhnu si novou verzi Nette a začnu s prvními příklady. Pochopitelně nic nefunguje. Jiný config, Nette\Database apod. A to nemluvím o doplňcích využívající třeba připojení k dibi. Jak je to s připojením k dibi v nové verzi? Možná by to chtělo nějak více přiblížit a vysvětlit. Díky.

Editoval Mirda (25. 9. 2011 10:17)

22
Člen | 1478
+
0
-

… v první řadě zkusil bych do vyhledávání google nebo tady zadat dibi připojení Nette 2.
Je jen málo věcí, na které by na tomhle foru neexistovala odpověď.

Nox
Člen | 378
+
0
-

No google… není to moc dobrý způsob jak získat příznivce a nevrhá to dobré světlo když se kouknou na framework a příklady nejedou…

(je mi jasné že „někdo to musí udělat“, o tom není sporu)

Editoval Nox (24. 9. 2011 12:03)

22
Člen | 1478
+
0
-

Tak dokumentace nemůže obsahovat všechno, zejména pokud se preferuje nyní Nette\Database před dibi, ale i tak třeba v kuchařce se dá najít, jak na to.

Naopak se domnívám, čím více odkazů na google najdeš v souvislosti s tvým dotazem k Nette, tím lépe pro jeho příznivce. .-)

Edit: to, že v dokumentaci jsou staré/nefunkční příklady, je samozřejmě nedostatek. Stačilo by, kdyby nováčci na takové příklady upozornili a jistě to někdo z nás opraví.. já krom svého tutoriálu žadné příklady z dokumentace neviděl asi už rok, čili možná se ani neví, že je tam něco špatně, dokud na to někdo neupozorní.

Edit2: námět na řešení

Editoval 22 (24. 9. 2011 12:48)

Mirda
Člen | 35
+
0
-
  1. se starší verzí jsem neměl nikdy žádné problémy. Vše fungovalo jak má. Super podpora. Tutoriály, doplňky, fórum.
  2. v hlavičce tutoriálů mi chybí zhruba následující informace: "Chcete-li pracovat dle tohoto tutoriálu nestahujte nejnovější verzi ale tuto …
  3. vždy jsem se domníval, že je tento web určen i začátečníkům a jsou plně podporováni.
  4. nevím, proč bych měl hledat někde na googlu. Vždycky jsem všechno našel zde.
  5. proč by nemohla být v distribučním balíku i verze s dibi? Kolik programátorů tady a teď používá verzi Nette\Database? (tohle fakt nevím a zajímalo by mě to)
  6. kdo a kdy bude předělávat doplňky?
  7. config.neon – stále se mu nelíbí formátování, tomu moc nerozumím
smasty
Člen | 90
+
0
-

@Mirda:

  1. S Nette 2 som nikdy nemal žiadne problémy, všetko funguje ako má. Podpora je dobrá (fórum, doc, jabber)
  2. Niečo také by sa určite hodilo, je to ale na autoroch tutoriálov.
  3. To aj sú.
  4. Súhlasím, a naďalej to platí.
  5. Pretože sa tak autor rozhodol. Nette\Database je do Nette priamo zabudovaná, preto sa aj používa vo všetkých ukážkach. dibi je third-party, aj keď od toho istého autora. Nikto ale nikoho nenúti používať jedno či druhé, alebo niečo úplne iné.
  6. Autori alebo dobrovoľníci, keď budú mať čas.
  7. Komu sa nepáči? Mne funguje bez problémov. Stačí nemiešať medzery s tabulátormi a zvyšok je absolútne intuitívny.
22
Člen | 1478
+
0
-

Mirda napsal(a):

  1. nevím, proč bych měl hledat někde na googlu. Vždycky jsem všechno našel zde.

Proč se tedy ptáš, jak se připojit k DB přes dibi v Nette 2?

Mirda
Člen | 35
+
0
-

Protože mi to přijde jako dost zásadní věc a tady se mi to nepodařilo najít. Chtěl jsem prostě best practice. Co je na tom špatného? Co napsat do config.neon, modelu a jak to vypsat v presenteru.

Ptám se proto, že to má být tady, jako podpora začátečníků.

Editoval Mirda (24. 9. 2011 21:32)

22
Člen | 1478
+
0
-

tak asi špatně hledáš, řešilo se to tu asi 50× už. Navíc jsem ti tam dostal i odkaz do kuchařky. Co chceš víc?

Filip Procházka
Moderator | 4668
+
0
-

Na dotaz jak se připojit s Nette 2b k dibi jsem já odpovídal nejméně 3× a to nemluvím o ostatních. Stačí použít hledání vpravo nahoře tady na této stránce. Je tam takový rámeček světle modrý, tam klikneš, napíšeš co tě zajímá a čteš co to najde.

Ale klidně ti odpovím ještě jednou, extra pro tebe.

V Nette 2beta se k dibi připojuješ úplně stejně jako v Nette 0.9.

Mirda
Člen | 35
+
0
-

Ano, vymýšlím si nesmysly. Všechno je v naprostém pořádku. Díky

net-vor
Člen | 35
+
0
-

ad připojení k dibi, je to jednoduché:

  1. v config.neon zadat login data, příklad zde (část production < common a development < common). K formátování config.neon používej buď mezery, nebo tabulátory, ale ne obojí (v tom případě tě na to laděnka upozorní).
  2. v bootstrapu pak stačí zavolat připojení dibi::connect($container->params['database']);, tím to hasne.
Mirda
Člen | 35
+
0
-

@ net-vor
Díky moc!!! Už jsem to rozjel. Jen jsem uvažoval o inovaci a nějak jsem se v tom zamotal. Chtěl jsem zkusit volat připojení z nějakého baseModelu. Když napíšu dibi::connect($container->params[‚database‘]); do bootstrapu, tak se vytvoří připojení automaticky bez ohledu na to, jestli zrovna používám db, nebo se mýlím? Viděl jsem tuto variantu //služba dibi se předá automaticky
public function __construct(DibiConnection $dibi) {
$this->dibi = $dibi;
}
a mám zmatek. Zase plácám nesmysly. No nic. Musím pořádně nastudovat OOP a třeba budu mít jasno.
Díky

boky
Člen | 18
+
0
-

Mirda napsal(a):

@ net-vor
Díky moc!!! Už jsem to rozjel. Jen jsem uvažoval o inovaci a nějak jsem se v tom zamotal. Chtěl jsem zkusit volat připojení z nějakého baseModelu. Když napíšu dibi::connect($container->params[‚database‘]); do bootstrapu, tak se vytvoří připojení automaticky bez ohledu na to, jestli zrovna používám db, nebo se mýlím?

Pridej do configu: „lazy: true“ a bude se to pripojovat, jenom, kdyz bude pripojeni k databazi treba

Patrik Votoček
Člen | 2221
+
0
-

@Mirda: není v našich silách projít celý „web“ nette.org a kouknout jestli jsou všechny tutoriály aktuální. Pokud víš o nějakém, který aktuální není nebo prostě nefunguje. Dej nám vědět uděláme vše pro to aby jsme to napravili.

Ad připojení k dibi do vyhledávacího políčka nahoře na této stránce jsem zadal dibi připojení Nette 2
a heleme se.

jeezaa
Člen | 3
+
0
-

Imho jako zacatecnik mam problem s dokumentaci.
Nasel jsem dokumentaci k v0.9 do ktere se obcas michaji veci z 2.0

Kdyby se jasne oddelila stara dokumentace a vedle toho by se vytvoril dalsi link s dokumentaci od verze 2.0.. byla by to bomba – napr. nejakt jako je to u SFML frameworku: http://www.sfml-dev.org/tutorials/

Ale je to jen nazor jednoho kolemjdouciho cloveka, ktery s nette prisel teprve pred tydnem do styku… tak to berte s rozvahou :)

Cya.

smasty
Člen | 90
+
0
-

@jeezaa:

birkof
Člen | 15
+
0
-

To smasty: Jo kdyby to bylo tak jednoduché. Bohužel dokumentace je otřesná. Například hned na začátku v první aplikaci je v tasklist.php uvedeno toto:

use Nette\Database\Connection,
Nette\Database\Table\Selection;

Bohužel class Selection neexistuje. Místo něj je TableSelection atd.. opravdu podle toho se nedá učit. Nebo úplně na začátku když jsem o nette uvažoval, jsem shlédl video , které ukazuje Framework::promo, které dnes již neexistuje. Přitom v tom videu není uvedené, že je pro nette verze xy. To konec konců neuvádíte nikde. Chtělo by to udělat wiki a hezky u všeho psát verze. Skutečně mě nebaví luštit jak asi něco může fungovat. Uvědomte si, že Nette stejně jako všechny frameworky jsou velmi složitý software.

jtousek
Člen | 951
+
0
-

birkof napsal(a):

Bohužel class Selection neexistuje. Místo něj je TableSelection atd.. opravdu podle toho se nedá učit.

To je zcela v pořádku. Dokumentace je psána pro verzi s namespaces na PHP 5.3+. Ve verzi pro 5.2 samozřejmě namespeces nejsou a třídy se musí jmenovat jinak – v tomto případě TableSelection. Není možné udržovat dokumentaci pro každou verzi zvlášť.

LeonardoCA
Člen | 296
+
0
-

Bohužel dokumentace je otřesná.

Není, je jen neúplná. Vyvíjí se, je čím dál lepší, ale není dokonalá.

To je zcela v pořádku. Dokumentace je psána pro verzi s namespaces na PHP 5.3+. Ve verzi pro 5.2 samozřejmě namespeces nejsou a třídy se musí jmenovat jinak – v tomto případě TableSelection. Není možné udržovat dokumentaci pro každou verzi zvlášť.

Neřekl bych, že je to zcela v pořádku. Je to nedostatek dokumentace. Pro začátečníka je opravdu těžké, si tyhle věci uvědomit. Chtělo by to vymyslet způsob jak dokumentovat srozumitelně a všechny verzi současně.

Aby to bylo zcela v pořádku, tak by každý řádek kódu a každý příklad měl být napsán funkčně pro každou verzi nette. Nebo měl mít alespoň obsahovat informaci pro kterou verzi nette byl kód otestován a je použitelný bez modifikací.

Jinak si myslím, že když to přeženu, tak by bylo jednodušší a uživatelsky přívětivější udržovat jen jednu verzi nette, aby nebyly zmatky.

hAssassin
Člen | 293
+
0
-

LeonardoCA napsal(a):
Jinak si myslím, že když to přeženu, tak by bylo jednodušší a uživatelsky přívětivější udržovat jen jednu verzi nette, aby nebyly zmatky.

a neni to ted tak? hlavni verze je 5.3+ s namespaces, pro php 5.2 je spis jen z historickych duvodu, rekl bych. To ze zacatecnik nerozumi namespaces je jeho minus a nema to nic spolecnyho s Nette a to ze ma hosting s 5.2kou a chce na nem zacinat novy projekt je taky jeho minus (pokud tam ma starsi projekty tak to je neco jinyho, ale ty asi v Nette nebudou, kdyz se ho ted uci, a na localhost jsou snad 5.3+ dostupny v pohode, ne?)

P.S. a vetsina stranek dokumentace, potazmo cely quickstart, je pro 5.3+ s namespaces (s addons to je horsi, ale na tom se pracuje, ze:-)

Editoval hAssassin (31. 5. 2012 3:06)

jtousek
Člen | 951
+
0
-

LeonardoCA napsal(a):
Neřekl bych, že je to zcela v pořádku. Je to nedostatek dokumentace. Pro začátečníka je opravdu těžké, si tyhle věci uvědomit. Chtělo by to vymyslet způsob jak dokumentovat srozumitelně a všechny verzi současně.

To mi nepřipadá moc reálné. Ale je fakt, že na stránce downloadu i v dokumentaci úplně chybí zdůraznění, že dokumentace je psaná výhradně pro doporučenou namespacovanou verzi Nette. To v pořádku rozhodně není.

Tharos
Člen | 1030
+
0
-

@jtousek: Proklikal jsem si teď namátkou několik stránek z dokumentace (formuláře, vytvořte si první aplikaci, routování…) a všude se to klíčovým slovem use jen hemží. V části věnované vytvoření první aplikace je dokonce odkaz na popis jmenných prostorů v PHP manuálu.

Z mého pohledu rozhodně není v pořádku, když se chystá Nette učit někdo, kdo z dokumentace na první pohled nepozná, že je psaná pro PHP 5.3. :) Takový člověk by měl začít samotným PHP a OOP, nikoliv MVC frameworkem. Má-li jeho studium vést k nějakému rozumnému výsledku.

Editoval Tharos (31. 5. 2012 9:38)

jtousek
Člen | 951
+
0
-

@Tharos: S tím nelze než souhlasit. :-) Přesto si myslím, že by to na stránce downloadu a/nebo dokumentace mělo být uvedeno. Že to některé nováčky může zmást jsme o kousek výše zcela jasně viděli.

Filip Procházka
Moderator | 4668
+
0
-

Na stránce download klikáš na odkaz „Nette Framework 2.0.3 pro PHP 5.3 nebo 5.4“ – to je ti málo?

PetrHH
Člen | 49
+
0
-

Já včera stáhl aktuální verzi Nette a chtěl použít sandbox pro nějaké pokusy. Bohužel ani samotný sanbox nefunguje. Je v něm 2× celé Nette. Musel jsem ten sandbox promazat aby fungoval :-(. Bohužel víc z hlavy nevím a teď nejsem u svého PC.

Michal Vyšinský
Člen | 608
+
0
-

Já teda vidím v sandboxu Nette jen 1* takže nevím co jsi stáhl. :-|

jtousek
Člen | 951
+
0
-

HosipLan napsal(a):

Na stránce download klikáš na odkaz „Nette Framework 2.0.3 pro PHP 5.3 nebo 5.4“ – to je ti málo?

Jestli to byla reakce na mě, tak jsem měl na mysli, že by mělo někde být výslovně uvedeno, že dokumentace je psána pro tuto verzi. Takže ano, je mi to málo.