DomůDokumentaceKomponentyRovržení komponent

Ještě než začneme psát první řádky kódu Joomly, musíme si něco povědět o tom jak jsou komponenty rozvržené. Protože toto rozvržení hodně souvisí s návrhovým vzorem Model-View-Controller, který Joomla 1.5 používá dostane se také na něj.

Vzorová aplikace

V rámci seriálu dokumentací o tvorbě komponent si vytvoříme jednoduché diskusní fórum, které bude rozděleno do sekcí a kategorií. Příspěvky půjdou zařadit pouze do kategorií a uživatel se bude moct zaregistrovat k odběru příspěvků na dané téma. URL adresy budou ve tvaru SEO adres tedy pěkných. Využijeme ale pouze tvorby pěkných URL, která je součásti standardní Joomly. Ukážeme si i jak vytvořit správné dotazy na databázi, aby šlo  využít služeb populárního rozšíření JoomFISH pro tvorbu vícejazyčného webu.

V administraci půjdou sekce a kategorie editovat. Také si umožníme administraci fóra ze správcovské části Joomly. Do administrace přidáme i nějaké konfigurační položky pro nastavení komponenty, takže v administraci budeme mít čtyři části(sekce, kategorie, příspěvky a nastavení), kterým pro jednoduchost budeme říkat elementy.

Základní rozdělení

Základní rozdělení komponenty je na administrátorskou a veřejnou část. Adminstrátorská část se nachází v adresáři /administrator/components a veřejná v /components. Zde se komponenta dále člení na adresáře controllers, models a views, přičemž v administrátorské části najdeme také tzv. objetkově relační mapování tabulek databáze v adresáři tables. Nebojte se i přes docela složitý název se nejedná o nic složitého jak se za chvilku dozvíme.

Model-View-Controller

Joomla 1.5 má na rozdíl od Joomly 1.0 mnohem lépe rozdělenou logiku zpracování požadavků. I když by šly vyrobit komponenty nevyužívající tento styl, rozhodně to není dobrý nápad si na takovýto kód zvykat. Tento návrhový vzor dělí uživatelský požadavek na tři části:

  • controller - neboli česky ovladač: Tato část řídí tok aplikace a řeší jak bude aplikace na určený uživatelský požadavek. Pro každý element se v Joomle obvykle použije jeden controller soubor.
  • model: Zde najdeme hlavní část logiky aplikace v Joomle. Hlavní část kódu přijde umístit do modelů. Pro jednotlivé elementy se využívají dva modely. Jeden pro zobrazení tabulky seznamu a druhý pro akce spojené s editací položek a jejich mazáním.
  • view - zobrazení: řídí jak bude výsledek ukázán uživateli. Opět pro každý element existují dvě zobrazení - jedno pro tabulku seznamu a druhé pro editaci. V Joomle adresář views rozdělený na adresáře podle názvu modelů. Každý takovýto podadresář ještě obsahuje jeden vnořený adresář tmpl, který obsahuje konkrétní šablonu zobrazení.

Pomocníci

Posledním typem souborů, se kterými se v rámci vývoje Joomly můžeme setkat jsou helpers, nebo-li česky pomocníci. Zde přijde umístit kód, který potřebujeme volat z různých míst aplikace a bylo by zbytečné jej duplikovat ve více modelech. Těchto pomocníku si můžeme vytvořit kolik chceme. A nejlepší je umístit je do adresáře helpers.

Objetové-relační mapování

Jelikož moderní programování je postaveno na instancích tříd, nebo-li objektech, což databázové programy trošku zaspaly, je nutné nějak jednotlivé tabulky na objekty nejprve převést. Což v Joomle znamená pouze vytvoření třídy, která bude obsahovat vyjmenování polí dané tabulky a metody, která provede přiřazení jména tabulky k dané třídě. Všechny tyto soubory mají místo v adresáři tables v administraci komponenty Joomly.

Komentářů (0)
Přidat komentář
YOUR_CONTACT_DETAILS:
Komentářů:
[b] [i] [u] [s] [url] [quote] [code] [img]   
:angry::0:confused::cheer:B):evil::silly::dry::lol::kiss::D:pinch:
:(:shock::X:side::):P:unsure::woohoo::huh::whistle:;):s
:!::?::idea::arrow:
SECURITY
Prosím=vložte text z obrázku (anti-SPAM ochrana

Zprávičky

Napsat novou zprávičku  |  Vše

sh404SEF 2.0.3.545

Nová verze

Napsal Peter Smrčák | 13.08 22:12

Kunena 1.6 RC1

Nová verze

Napsal Peter Smrčák |  9.08 15:28

Vyšla nová Kunena RC1 pre pripravovanú Joomlu 1.6.

EasyBook reloaded!

Nová verze

Napsal Peter Smrčák |  4.08 06:41

Vyšla stabilná verzia obľúbenej návštevnej knihy EasyBook reloaded vo verzii 2.0.4.

VirtueMart 1.1.5

Nová verze

Napsal Peter Smrčák | 28.07 15:11

Práve vyšiel nový VirtueMart.

Táto verzia opravuje rôzne problémy.

changelog | download

Joomla 1.5.19

Bezpečnost

Napsal Filip Bartmann | 16.07 18:30

Dnešním dnem spatřila světlo světa další aktualizace stabilní řady Joomly 1.5, tentokrát s pořadovým číslem 19 a kódovým jménem Wojmamni ama batani. Jedná se o opravu několika menších bezpečnostních chyb v administraci a také novou verzi js frameworku Mootools.

Více...

Jméno Joomla!® je použito pod limitovanou licenci od Open Source Matters ve Spojených státech a ostatních zemích. Joomladev nemá spojení s Open Source Matters, nebo projektem Joomla! a není součástí jejich podpory
Logo Joomla!® je použito pod limitovanou licenci od Open Source Matters ve Spojených státech a ostatních zemích. http://joomladev.eu nemá spojení s Open Source Matters, nebo projektem Joomla! a není součástí jejich podpory