NOVINKA - Online rekvalifikační kurz Python programátor. Oblíbená a studenty ověřená rekvalifikace - nyní i online.
Hledáme nové posily do ITnetwork týmu. Podívej se na volné pozice a přidej se do nejagilnější firmy na trhu - Více informací.
Funkce, kterou se snažíš použít je dostupná pouze pro registrované uživatele. Buďto se přihlas nebo si zdarma vytvoř nový účet.

Diskuze – Lekce 1 - Popis MVC architektury

Zpět

Upozorňujeme, že diskuze pod našimi online kurzy jsou nemoderované a primárně slouží k získávání zpětné vazby pro budoucí vylepšení kurzů. Pro studenty našich rekvalifikačních kurzů nabízíme možnost přímého kontaktu s lektory a studijním referentem pro osobní konzultace a podporu v rámci jejich studia. Toto je exkluzivní služba, která zajišťuje kvalitní a cílenou pomoc v případě jakýchkoli dotazů nebo projektů.

Komentáře
Avatar
Odpovídá na svanda777
Neaktivní uživatel:24.7.2014 9:39

Nestačil by jen nový kontroler?

Odpovědět
24.7.2014 9:39
Neaktivní uživatelský účet
Avatar
svanda777
Tvůrce
Avatar
svanda777:24.7.2014 9:40

Také mne to napadlo, ale potřebuji mít jiný layout.

Editováno 24.7.2014 9:41
 
Odpovědět
24.7.2014 9:40
Avatar
Milan Křepelka
Tvůrce
Avatar
Odpovídá na svanda777
Milan Křepelka:24.7.2014 14:08

To nemá s architekturou MVC nic společného. Třeba v ASP.NET MVC říkáš - všechna View mají nějaký konkretní default layout. Ale není problém pro každé View či skupinu View definovat nějaký jiný layout.

 
Odpovědět
24.7.2014 14:08
Avatar
Michal Kuba
Tvůrce
Avatar
Michal Kuba:1.1.2016 22:32

Ahoj.
Mohu pomocí MVC dosáhnout toho, že mám webovou stránku a administrace bude jinak graficky udělaná? Myslím tím, že když zadám www.domena.cz/administrace, aby se otevřela administrace, ale bez prvků z rozlozeni.phtml (menu, postranní panel, patička). Nebo si mám na hostingu udělat jakože další subdoménu admin.domena.cz a tam to dělat všechno?

Díky za odpovědi :)

 
Odpovědět
1.1.2016 22:32
Avatar
Odpovídá na Michal Kuba
Martin Konečný (pavelco1998):1.1.2016 23:51

Zdar,

pochopitelně můžeš, otázkou je, jak složitý si to uděláš :D
Teď z hlavy bych asi nevymyslel dobré řešení, zvlášť protože tohle za mě řeší framework (zkus se podívat, jak se v Nette dělají moduly, třeba ti to trochu helpne).
Hodně zjednodušeně to v Nette funguje tak, že si pro každý modul uděláš jiné presentery (controllery) a jiné šablony (včetně obecného layoutu, do kterého se jednotlivé šablony vkládají).
Pomocí URL adresy pak router pozná, který modul se má načíst (v podstatě jde jen o složku, např. si uděláš routu, že všechny stránky, které začínají slovem admin (třeba admin/users, admin/overview atd.), jsou v modulu AdminModule a veškeré presentery a šablony se budou načítat právě z tohoto modulu).

Odpovědět
1.1.2016 23:51
Aktuálně připravuji browser RPG, FB stránka - https://www.facebook.com/AlteiraCZ
Avatar
Michal Kuba
Tvůrce
Avatar
Odpovídá na Martin Konečný (pavelco1998)
Michal Kuba:2.1.2016 8:41

Úplně teď nemám tolik času, kolik bych potřeboval, takže Nette nechám na doučení se později a asi udělám teda administraci tak, že udělám subdomenu a té udělám vlastní šablonu a vše bud komunikovat se stejnou db :) Ale díky za nápad, takhle jak to píšeš to chápu, jenže neumím Nette, takže bych to asi těžko skládal dohromady :)

 
Odpovědět
2.1.2016 8:41
Avatar
Odpovídá na Michal Kuba
Martin Konečný (pavelco1998):2.1.2016 11:44

Nemyslel jsem, aby ses učil Nette, jen se podíval, jak tam ty moduly fungují (pokud to vůbec někde je napsaný) :)

Odpovědět
2.1.2016 11:44
Aktuálně připravuji browser RPG, FB stránka - https://www.facebook.com/AlteiraCZ
Avatar
Dušan Janotik:15.3.2018 23:17

Zdravím v prvom rade chcem poďakovať za skvelý seriál. Chcel by som sa spýtať či môže pohľad priamo komunikovať s modelom. Teda či môžem v pohľade priamo vytvoriť nový model a použiť jeho metódu.
Príklad môjho kódu, kód nižšie je kód pohľadu

    <?php foreach ($persons as $person) : ?>
<tr>
<td>
  <?php $um = new UserManager();
               $helper = $um->getUsername($person);
               echo $helper ?>
</td>
</tr>

    <?php endforeach ?>

aplikácia funguje perfektne ale zaujíma ma či je správne a povolené v MVC architektúre. Či som tým neporušil nejaké pravidlá. Čo si o tom myslíte ?

 
Odpovědět
15.3.2018 23:17
Avatar
Odpovídá na Dušan Janotik
Michal Šmahel:16.3.2018 0:53

Z mého pohledu je to chyba v návrhu. Samozřejmě pokud to budeme vztahovat přímo na MVC. Pohled by měl komunikovat výhradně s kontrolerem (když už), v ideálním případě ani s ním (v MVP je toto volnější). Pohled by měl data obdržet od kontroleru.

Kontroler si získá data od modelu. Tyto data následně předá pohledu při jeho načtení. Pohled obsahuje pouze HTML strukturu, případně šablonové nástroje pro generování kódu z dat od kontroleru.

Odpovědět
16.3.2018 0:53
Nejdůležitější je motivace, ovšem musí být doprovázena činy.
Avatar
Lasvit
Člen
Avatar
Odpovídá na Dušan Janotik
Lasvit:16.3.2018 9:31

Ano, úplně porušil, pokud si tento článěk přečteš pořádně, tak si všimneš, že pohled totálně neví o modelu a vyplnuje se pouze kontrollerem.

 
Odpovědět
16.3.2018 9:31
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 10 zpráv z 35.