Routrování a rozdíl mezi latte a phtml

Upozornění: Tohle vlákno je hodně staré a informace nemusí být platné pro současné Nette.
Filip Procházka
Moderator | 4668
+
0
-

Pozor, neplést model a modul.

Modul je skupina presenterů a komponent

AdministrationModule
	presenters
		LoginPresenter
		DashboardPresenter
		...
	templates
		Login.in.latte
		Login.out.latte
		@layout.latte
		...

Model je „skupina tříd“ ve které je logika. Presentery si pak vytváří (nebo získávají už nakonfigurované z DI Containeru) jednotlivé služby (modely) a s nimi pracují

class ClankyPresenter extends BasePresenter
{

	/** @var ClankyModel */
	private $clanky;

	/** @var DibiRow */
	private $clanek;

	protected function startup()
	{
		parent::startup();
		$this->clanky = new ClankyModel(dibi::getConnection());
	}

	public function actionRead($id)
	{
		$this->clanek = $this->clanky->find($id);
	}

	public function renderRead()
	{
		$this->template->clanek = $this->clanek;
	}

}

Takový ClankyModel se pak stará o práci s daty (vytváření, čtení, úprava, smazání, …), ale o i práci s logikou. Kde práce s logikou, což by tě asi ještě chvilku nemělo zajímat, pokud se teprve učíš MVC :)

eximik
Člen | 43
+
0
-

hmm takže… Model je prostě soubor se třídama, ve kterých se pracuje s daty (db inserty, selecty, scitani, odcitani atpd.), prezenter si tyhle data natáhne u modelu a dá je do šablony(template)… Chápu to dobře?

grey
Člen | 94
+
0
-

eximik wrote:

hmm takže… Model je prostě soubor se třídama, ve kterých se pracuje s daty (db inserty, selecty, scitani, odcitani atpd.), prezenter si tyhle data natáhne u modelu a dá je do šablony(template)… Chápu to dobře?

Tak tak, víc třeba tady

eximik
Člen | 43
+
0
-

grey napsal(a):

eximik wrote:

hmm takže… Model je prostě soubor se třídama, ve kterých se pracuje s daty (db inserty, selecty, scitani, odcitani atpd.), prezenter si tyhle data natáhne u modelu a dá je do šablony(template)… Chápu to dobře?

Tak tak, víc třeba tady

hmm to je horší jak třídění odpadu… Bude hodně vadit když to budu to co je v modelech cpát do prezenterů?

grey
Člen | 94
+
0
-

eximik wrote:

grey napsal(a):

eximik wrote:

hmm takže… Model je prostě soubor se třídama, ve kterých se pracuje s daty (db inserty, selecty, scitani, odcitani atpd.), prezenter si tyhle data natáhne u modelu a dá je do šablony(template)… Chápu to dobře?

Tak tak, víc třeba tady

hmm to je horší jak třídění odpadu… Bude hodně vadit když to budu to co je v modelech cpát do prezenterů?

Tak mělo by to vadit tobě, hlavně když pak budeš chtít třeba kód rozšiřovat, tak budeš muset hledat kde co máš atd… Radši to dělej tak jak se má, třeba něco o modelech si můžeš načíst tady , a prostě si procházet příklady/ jiné tutoriály a koukat jak je to dělané tam…

eximik
Člen | 43
+
0
-

grey napsal(a):

eximik wrote:

grey napsal(a):

eximik wrote:

hmm takže… Model je prostě soubor se třídama, ve kterých se pracuje s daty (db inserty, selecty, scitani, odcitani atpd.), prezenter si tyhle data natáhne u modelu a dá je do šablony(template)… Chápu to dobře?

Tak tak, víc třeba tady

hmm to je horší jak třídění odpadu… Bude hodně vadit když to budu to co je v modelech cpát do prezenterů?

Tak mělo by to vadit tobě, hlavně když pak budeš chtít třeba kód rozšiřovat, tak budeš muset hledat kde co máš atd… Radši to dělej tak jak se má, třeba něco o modelech si můžeš načíst tady , a prostě si procházet příklady/ jiné tutoriály a koukat jak je to dělané tam…

Nj, jenže já oříznu tutoriál a nefunguje mi to… Tady na foru nechci furt spamovat a sám to nevyřešim… Už ted sem za debila .. (o:

grey
Člen | 94
+
0
-

eximik wrote:

Nj, jenže já oříznu tutoriál a nefunguje mi to… Tady na foru nechci furt spamovat a sám to nevyřešim… Už ted sem za debila .. (o:

Jako, pokud ti jde jen o to to zprasit aby ti to fungovalo, tak si to klidně zpras, ale sám časem dojdeš k tomu že to nebyla nejlepší volba ;)

_Martin_
Generous Backer | 679
+
0
-

Ale no tak, sebelítostí nic nespravíš ;) Sedni si k počítači, do prohlížeče dej adresu „google.com“ a začni hledat informace. Určitě se podívej na zdroják, kde bylo několik pěkných článků o MVC a MVP, navštiv stránky Honzy Tichého a prozkoumej i články, co ti navrhnuli kluci. V případě modelové vrstvy exituje několik různých přístupů, zaměř se na pojmy ORM, ActiveRecord.

Zajimavé je i NotORM od Jakuba vrány, které se dostalo v jisté úpravě do Nette. Jde o zvláštní a velmi jednoduchý a efektivní přístup k DB. Mě osobně není jasné, jak v něm řešit nějakou business logiku (něco víc, než zápis a čtení dat do/z DB), ale s tím ti třeba poradí někdo jiný, kdo to používá. Rozhodně informací lze najít více než dost=)

Editoval _Martin_ (8. 6. 2011 21:44)

grey
Člen | 94
+
0
-

Přesně tak, prostě studovat, studovat a studovat, ono ti to časem dojde ;)