2. díl - Nette sandbox a IDE

PHP Nette Framework Základy Nette sandbox a IDE

Vítejte u prvního dílu seriálu, který bude zaměřen na začínající uživatele Nette frameworku.

Nette framework asi není nutné moc představovat. V našich končinách je poměrně známý. Jedná se o český PHP MVC framework jehož autorem je David Grudl. Koho by zajímalo více detailů, tak nechť zavítá na oficiální stránky nette.org.

Potřebný software

Jako první, co je potřeba udělat, je stáhnout/nain­stalovat/rozba­lit správný software, který budeme potřebovat. Budu předpokládat, že máte nainstalovaný a zprovozněný webový server Apache + PHP + MySQL. Pokud ne, tak pro začátečníky doporučuji XAMPP.

Dále pro ty co jsou zvyklí psát v editoru jako třeba PSPad, tak bych doporučil nějaké IDE, které vám práci usnadní. Doporučuji NetBeans, který má od verze 7.4 zabudovaný plugin přímo pro Nette a nemusíte ho tedy instalovat ručně, jako tomu bylo v předchozích verzích.

Pokud toto všechno máte, tak budeme samozřejmě potřebovat Nette framework. Ten stáhneme na oficiálním webu v sekci download a to v aktuální verzi.

Stažený archiv rozbalíme do nějaké složky na disku. Doporučuji kvůli nastavení co budeme provádět v NetBeans vytvořit složku v nějakém podobném formátu co dělám. Všechno bude později upřesněno. Můj adresář s rozbaleným frameworkem se nachází na disku D ve složce Nette.

Nenenechte se zmást obrázkem se starším číslem verze, tento seriál je průběžně aktualizováván pro nejnovější verze Nette, která je uvedena v předchozím dílu.

Adresář s Nette

V této složce mám více verzí, podle toho na kterých aktuálně mám postavené projekty a když něco potřebuji abych se k nim mohl zpětně dostat. Ve složce latest je aktuální poslední verze Nette, kterou používá NetBeans při vytváření nového projektu.

Ještě je vhodné ověřit, zda nastavení Apache a PHP splňuje podmínky pro správný běh Nette frameworku. V rozbaleném archivu s frameworkem ve složce tools se nachází další adresář s názvem Requirements-Checker. Jeho obsah nakopírujte do www root Apache (defaultně je to v případě XAMPP xampp/htdocs/) a v prohlížeči zadejte adresu http://localhost/checker.php.

Nette Checker

Všechny řádky by měly svítit zeleně. Pokud je nějaký žlutý, tak to nevadí a framework pojede, jen nebudete moci využívat danou funkci.

NetBeans

Pokud jste se rozhodli pracovat v NetBeans, tak je potřeba (no není to nutné, ale pro další práci je to lepší) udělat pár nastavení.

V hlavním okně NetBeans kliknete na Tools -> Options a v nově zobrazeném okně kliknete na PHP a vyberete záložku Nette2 a zadáte dvě cesty. První z nich je k "loaderu" Nette a druhá je k sandboxu.

Nastavení NetBeans pro Nette

Tady se ukazuje výhoda vložení aktuální verze do adresáře latest. Nemusíte při každé nové verzi přenastavovat cestu k novému umístění. Pouze přepíšete soubory novými.

Vytvoření projektu z sandboxu

Teď už máme snad všechno nastaveno a zbývá jen vytvoření projektu. To provedeme jako v každém jiném IDE - File -> New project.

V nově otevřeném okně se zobrazí průvodce. Vybereme kategorii PHP a jako projekt zvolíme PHP Application.

Vytvoření PHP Nette projektu

V dalším kroku vyplníme název projektu (např. DatabazeKnih, ale na názvu nám teď nezáleží) a místo kam se má uložit. Nejspíš někam, kam má přístup Apache jako htdocs.

Název Nette projektu a umístění

Ve třetím kroku není potřeba nic měnit a v posledním, tedy čtvrtém kroku, vyberete požadovaný framework - v našem případě Nette2 PHP Web Framework a klikneme na Finish

Dokončení průvodce

Tímto jsem vytvořili první projekt postavený na Nette. Výsledek naší práce by měl vypadat nějak takto

Nette projekt ze sandboxu

Ještě před spuštěním - otestováním - vytvořeného projektu vytvoříme jeden .htaccess soubor. Jelikož adresářová struktura projektu je

  • app
  • bin
  • log
  • temp
  • tests
  • vendor
  • www

, kde vlastní index.php je ve složce /www, tak by výsledná adresa vypadala http://localhost/…azeKnih/www/ s tím, že musíme kliknout po nahrání http://localhost/DatabazeKnih na adresář /www, aby se spustil index.php. Je možnost vytvořit v rootu projektu vlastní index.php a přesměrovat ho do /www/index.php a nebo index.php ze složky /www přesunout o úroveň výše, aby byl v kořenu projektu, ale s tím by se muselo překopat spousta věcí a zbytečně.

Elegantnější cesta je nechat vše jak je a vytvořit v rootu projektu soubor .htaccess. Pomocí něj se "přesuneme" do složky /www a bude ji brát jako root složku a URL adresa bude vypadat http://localhost/DatabazeKnih/.

Soubor přidáme kliknutím pravým tlačítkem na "Source Files" v okně NetBeans a vybereme z kontextové nabídky New -> Other.... V otevřeném okně zvolíme kategorii Other a v pravém sloupci vybereme Empty file. Klikneme na Next a jako název souboru napíšeme .htaccess a klikneme na Finish.

Do vytvořeného souboru napíšeme nebo vložíme následující kód

<IfModule mod_rewrite.c>
        RewriteEngine On
        RewriteRule ^$ www/ [L]
        RewriteCond %{REQUEST_FILENAME} !-f
        RewriteCond %{REQUEST_FILENAME} !-d
        RewriteCond %{REQUEST_URI} !^www/
        RewriteRule ^(.*)$ www/$1
</IfModule>

a tím se dostáváme k dnešnímu výsledku, kdy by se vám mělo zobrazit stejné okno. Tím jste vše udělali správně a jsme tím pádem na správné cestě k naučení se Nette a k příštímu dílu.

Zprovozněný sandbox v Nette frameworku

Příště si vytvoříme svou první aplikaci v Nette, prozradím, že se jedn


 

Stáhnout

Staženo 491x (803.45 kB)
Aplikace je včetně zdrojových kódů v jazyce PHP

 

  Aktivity (2)

Článek pro vás napsal kashpi
Avatar
Autor se věnuje backendovým systémům postavených na PHP a databázím MySQL a MS-SQL a pracuje ve společnosti AVG technologies CZ.

Jak se ti líbí článek?
Celkem (17 hlasů) :
4.882354.882354.882354.882354.88235


 


Miniatura
Předchozí článek
Úvod do Nette frameworku pro PHP
Miniatura
Všechny články v sekci
Základy Nette frameworku
Miniatura
Následující článek
První aplikace v Nette

 

 

Komentáře

Avatar
Ori
Člen
Avatar
Ori:

Vyborne, snad budes pridavat tutorialy castejsie, pretoze prechadzam z CodeIgniteru na nette a vobec sa mi to nepaci a nerozumiem tomu

 
Odpovědět 9.3.2014 18:11
Avatar
kashpi
Redaktor
Avatar
kashpi:

Plánuji během následujícího týdne napsat alespoň další 2 díly

 
Odpovědět  +1 9.3.2014 18:47
Avatar
David Čápka
Tým ITnetwork
Avatar
Odpovídá na kashpi
David Čápka:

To tedy vypadá, že se budu učit Nette :P

Odpovědět  +4 9.3.2014 18:51
Miluji svou práci a zdejší komunitu, baví mě se rozvíjet, děkuji každému členovi za to, že zde působí.
Avatar
yelidric
Člen
Avatar
yelidric:

strasne moc dakujem za ten htaccess subor na konci lebo ten co maju na stranke nette mi nesiel a kvoli nemu som zabil 7 hodin jak volaky blbecek so zapinanim mod_rewrite na apachi v linuxe zbytocne :D :D skoro ma pritom slak trafil takze za moje zdravie DAKUJEM :)

 
Odpovědět  +2 26.4.2014 11:47
Avatar
filipfr
Člen
Avatar
filipfr:

Ahoj, poradíte mi někdo, jak zprovoznit na linuxu+netbeans? Sandbox jsem si vygeneroval přes composer. Nicméně nevím, co zadat jako cestu k Nette framework sources. Díky

 
Odpovědět 15.8.2015 13:02
Avatar
loading84
Člen
Avatar
loading84:

Až na to, že když se dá projekt na Disk D tak nefunguje. Musím to mít v "C:/xampp/htdocs" virutal host nezabral.

<VirtualHost *:80>
DocumentRoot "D:/www/DatabazeKnih"
ServerName DatabazeKnih
</VirtualHost>
 
Odpovědět  -2 11.11.2015 18:15
Avatar
kashpi
Redaktor
Avatar
Odpovídá na loading84
kashpi:

Dej si to na disk ktery chces, ale pokud chces pracovat s virtual hostama, tak je dobre si to nejdriv nastudovat, jak se nastavuji cesty atd.
https://httpd.apache.org/…xamples.html

 
Odpovědět  +1 19.11.2015 9:31
Avatar
siders
Člen
Avatar
siders:

ověření splňujících podmínek pro správný běh Nette frameworku (verze Nette 2.4):

  • rozbalit stažený archiv, vyhledat v něm "checker"
  • zkopírovat obsah adresáře checker (cesta např. ...\latest\san­dbox\www) do rootu (xammp/htdocs)
  • v prohlížeči stačí zadat localhost

nastavení NetBeans 8.1:

 
Odpovědět  +1 15. srpna 12:30
Avatar
Nezmar Hydra
Člen
Avatar
Nezmar Hydra:

Jen se podělím o zkušenost.

Abych mohl používat .htaccess musel jsem v root/etc/apache2/a­pache2.conf
nastavit
<Directory /var/www/>
Options Indexes FollowSymLinks
AllowOverride All
Require all granted
</Directory>

abych mohl používat stažené soubory musím jim změnit práva v root/var

sudo chmod a+rwx www -R

Mám Ubuntu 14.04 release
Web server Apache/2.4.7 (Ubuntu)
PHP version 5.5.9-1ubuntu4.20

Děkuji za bezvadně popsanej popis instalace.

 
Odpovědět 22. listopadu 21:27
Děláme co je v našich silách, aby byly zdejší diskuze co nejkvalitnější. Proto do nich také mohou přispívat pouze registrovaní členové. Pro zapojení do diskuze se přihlas. Pokud ještě nemáš účet, zaregistruj se, je to zdarma.

Zobrazeno 9 zpráv z 9.