Blog

Learn2Code: 2. modul - Ruby/Ruby on Rails II.

Marian Kristel - 28.05.2013 - Vzdělávání

Pokračujeme v stručnom predstavení druhého modulu programu tvorby webových aplikácií v Learn2Code. 

Migrácie

Keďže počas vývoja projektu sa nevyhneme zmenám. Keď nahrávame nový kód na produkčný server, potrebujeme tiež aktualizovať tabuľky databázy. Tento problém riešia migrácie, ktorým sme preto venovali veľkú pozornosť. Migrácie sú prepracovaným modulom Ruby on Rails a napomáhajú spravovať tabuľky relačných databáz.

Scaffolding

Štefan nám ukázal aj zrýchlený spôsob generovania hlavných súčastí aplikácie - scaffolding. Scaffold vytvorí funkčné časti zdrojového kódu zo šablón, ktoré Railsy obsahujú. Takto vygenerované zdrojové kódy je následne samozrejme možné upravovať. Ak teda chceme vytvoriť na jeden šup modely, kontrolery aj šablóny, vygenerovať scaffold je ideálnym nástrojom. Treba však povedať, že hoci scaffold pomôže k rýchlemu začiatku s vývojom aplikácie, negeneruje univerzálny kód, je potrebné ho upravovať a z tohto dôvodu väčšina skúsených Rails vývojárov scaffold nepoužíva.

Šablóny, layouty, partialy

Ruby on Rails má integrovaný prokročilý šablónovací systém. Všetky šablóny aplikácie sa nachádzajú pod adresárom app/views/*. Výsledná podoba stránky, ktorú môžeme vidieť v prehliadači je dosiahnutá sledom rôznych krokov. Stránka pozostáva z layoutu, šablóny aktuálnej akcie a prípadne partialov. Každý z týchto elementov predstavuje určitý level zanorenia:

  1. Najzákladnejšou šablónou je layout. Najčastejšie obsahuje iba základnú štruktúru HTML stránky a značky na načítanie CSS a JS súborov.
  2. Do layoutu je vložená šablóna presne podľa aktuálneho controlleru a akcie (yield).
  3. Každá šablóna môže do seba ďalej vkladať partialy, čo sú “mini šablóny” a riešia časť logiky v zmysle dizajnu (napr. navigácia alebo box s produktom).

I18n

Súčasťou Ruby on Rails je aj framework na preklad aplikácie do ďalších jazykov. Pomocou I18N (18 je počet písmen medzi i a n v slove internationalization) je možné vytvoriť jazykovú mutáciu nášho webu. Ukážka aplikácie, ktorú sme vytvorili, je na priložených obrázkoch (v aplikácii nebolo takmer vôbec použité CSS).

Naše aplikácie je potrebné dostať online, keďže doteraz bežali len na lokálnej adrese. Využili sme na to cloud hostingovú službu Heroku, ktorá je do istej miery zadarmo. 


To je vo veľmi skrátenej a okresanej forme obsah druhého modulu, všetko sa obsiahnuť nedá a prebrali sme toho omnoho viac. Nadobudnuté vedomosti a zručnosti určite využijeme pri vývoji vlastných aplikácií počas workshopu, určite to tým však neskončí.


Maiox

Marian Kristel

Mám na starosti marketing a operations v Learn2Code | (spolu)organizujem programátorský workshop Rails Girls Bratislava | ambasádor EU Code Week na Slovensku

Learn2Code: 2. modul - Ruby/Ruby on Rails I.

Vzdělávání

V tomto blogposte vám predstavíme čo sa naučíte v druhom moduli Learn2Code - Ruby a jeho frameworku Ruby on Rails. Celý modul trvá 7 týždňov a...

Sedem dôvodov, prečo sa učiť Ruby on Rails

Vzdělávání

Zaujímaš sa o internet a technológie, chcel by si sa naučiť programovať, no nevieš kde začať? Learn2Code ti prináša ucelený koncept, ktorý ťa od...

Prečo sa naučiť programovať?

Vzdělávání

Internet a technológie v súčasnosti zasahujú do takmer všetkých oblastí nášho života. Svet sa rýchlo mení, prispievajú k tomu aj nové aplikácie,...