Na uvod bych rad rekl, ze ocenuji autorovu snahu priblizit RoR "masam". Je to rozhodne zasluzna cinnost ... jen mi prijde, ze by to slo udelat s mensim mnozstvim chyb.
Pokusim se popsat jen nektere z nich (ty do oci bijici):
Nevim, jestli to byl autoruv zamer a nebo proste jen "prehmat", ale ten priklad se zkracovanim metod je syntakticky nespravny. I kdyz bych akceptoval, ze si autor vymyslel metodu checkbox
, ktera v RoR API neexistuje (existuji dve podobne -- check_box
a check_box_tag
, ale obe maji uplne jinou signaturu), tak me zarazi zjevna syntakticka chyba -- pouziti lokalnich promennych (checked
, size
) misto symbolu (:checked
, :size
).
Dalsi podivna vec je myslim informace o views. Ve view se nepouziva jen <%=
, ale take <%
a bylo by dobre upozornit na ten rozdil (bez = se vysledek expression nevypisuje do vystupu). Navic by nebylo od veci zminit "h" a jeho vyznam pri ochrane proti XSS.
Dalsi velmi zavadejici informace je myslim: Kontrolér řeší logiku. V podstatě řídí posloupnost zobrazování stránek a výměnu dat mezi nimi. To je myslim uplne "mimo misu". Controller neridi posloupnost zobrazovani stranek. Controller zpracovava requesty uzivatelu, vola metody prislusnych modelu a zobrazuje vysledky volanim prislusnych views. Controller nema tuseni o nejakem "flow" mezi akcemi/strankami.
Za drobny prohresek proti obecne uznavanemu CodingStyle bych navic povazoval i pouziti { ... }
misto do ... end
(v prikladu listovani zaznamu z modelu). Stejne tak pouziti "deprecated" metody find_all
misto find(:all)
pusobi mirne neserioznim dojmem.