Základní kostra aplikace

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

Trochu teď Nette zkouším. Vycházel jsem ze stránky Suggested Directory Structure a napadlo mě, že bych mohl výsledek zazipovat a poskytnou ostatním. Všechno to pořád ručně vytvářet a copypastovat není moc velká zábava…

Instalace je jednoduchá, ale lze ji popsat i podrobně a složitě:

  1. Stáhněte si Nette Skeleton a někam ho rozbalte.
  2. Stáhněte si Nette. V tomhle archívu je toho víc než potřebujete.

    Potřebujete jenom adresář Nette (případně jeho úpravu pro PHP 5.2 nebo 5.3), který si zkopírujete do adresáře libs v dříve rozbaleném skeletonu.

  3. Dále ve skeletonu najděte adresář app/temp a zařiďte, aby do něj PHP mohlo zapisovat. Já používám FAT32, takže se mě to netýká.
  4. Pojmenujte si doménu. Do souboru /etc/hosts (na Linuxu) nebo c:\WINNT\system32\drivers\etc\hosts (na Windows) přidejte tenhle řádek:
    127.0.0.1       nette-skeleton
  5. Nastavte Apache, aby požadavky na tu doménu směroval tam, kam potřebujeme. Najděte ten konfigurační soubor Apache, kterým se seřizují virtual hosty. Obvykle se jmenuje vhosts.conf, ale ne nutně, v některých distribucích to třeba může být všechno naprcaný v hlavním httpd.conf nebo ještě jinde.

    Tam musí být nastaveno, že tenhle server obstarává virtuální servery založené na doménovém jménu:

    NameVirtualHost *:80

    No a pak si už můžete vytvořit ten virtuální server a nasměrovat ho do složky document_root v dříve rozbaleném skeletonu:

    Viz následující příspěvek...
  6. Resetujte Apache.

    Pokud jste Apache instalovali instalátorem pro Windows, tak Start → Programs → Apache HTTP Server 2.2 → Control Apache Server → Restart. Pokud používáte nějakou ptákovinu typu XAMPP nebo EasyPHP, ty na to mívají vlastní ovládací panely. Na Linuxu to bývá různě, někde /etc/init.d/apache restart, někde /etc/rc.d/apache restart, někde ještě jinak.

    Nějak si poraďte nebo přinejhorším vyresetujte celý komp.

  7. Teď zkuste jít na http://nette-skeleton/ , už by to mělo fungovat.
  8. A můžete blbnout.

    Ty zajímavé věci najdete v adresáři app. Podadresář presenters obsahuje momentálně jeden presenter (něco jako controller v RoR), který má dvě views (něco jako akce v RoR) a k těm jsou v adresáři templates jejich šablony (něco jako views v RoR). Výchozí chování je takové, že po view se zpracovává šablona <Presenter>/<action>.phtml a její výstup se vsadí do nejbližšího nadřazeného layoutu (soubor @layout.phtml). Tohle chování lze ale případně snadno změnit, jako skoro všechno v Nette.

Oproti zmíněnému návodu je v tom pár změn. Při bootstrapu inicializuju i RobotLoader, v .htaccess povoluju krátké tagy (v originálním php.ini jsou zakázané) a taky přidávám allow from all. No a taky jsem jednoduše dodělal ten Default:hello view.

Editoval llook (20. 6. 2008 12:54)

llook
Člen | 407
+
0
-

Nějak se mi nedaří, aby /---code uvnitř seznamu bylo na víc řádek, asi nějak nešťastně nastavené CSS… Nastavení virtuálního serveru má vypadat takhle:

<VirtualHost *:80>
	DocumentRoot "E:/Workspace/Nette-skeleton/document_root"
	ServerName nette-skeleton
</VirtualHost>