Tomáš Pavelkahttp://tomaspavelka.postach.io/feed.xml2015-03-05T09:48:36.647000ZWerkzeugHeroku: Přesměrování www v Ruby on Railshttps://tomaspavelka.postach.io/post/heroku-presmerovani-www-v-ruby-on-rails2015-03-05T09:48:33.817000Z2012-01-25T20:41:00ZTomáš PavelkaŠiroce oblíbený Ruby on Rails hosting - <a href="http://Heroku.com">Heroku.com</a> - nemá standardní řešení přesměrování z <a href="http://myapp.com">http://myapp.com</a> na <a href="http://www.myapp.com">http://www.myapp.com</a>. Je nutné to tedy řešit až na úrovni Rails aplikace.
<div><script src="https://gist.github.com/kinopyo/2425339.js"></script><br/>
<div>Já osobně jsem si kód trochu upravil, tak aby přesměrovával z "z bez www" na "s www" a ne naopak jak to původně bylo. Myslím si totiž, že běžní uživatelé jsou zvyklí na URL s www.</div>
</div>HTML5 a menu taghttps://tomaspavelka.postach.io/post/html5-a-menu-tag2015-03-05T09:48:35.814000Z2012-01-24T18:26:00ZTomáš Pavelka<div>Jak postupně pronikám do tajů HTML5, narazil jsem na zajímavost kolem <b>menu</b> tagu. Dříve (XHTML) jsem tento tag používal kvůli vyšší sémantice při kódování layoutu pro navigaci/menu na stránce. Přišlo mi to vhodnější než nějaké <b>ul#nav</b> nebo <b>div#nav</b>.<br/></div>
<div>Jak však píše <a href="http://html5doctor.com/nav-element/">HTML5 Doctor</a> dostal tag menu s příchodem HTML5 nový význam a je vhodnější použít konstrukci <b>nav > ul</b>.</div>Vlastní konfigurace v RoR aplikacihttps://tomaspavelka.postach.io/post/vlastni-konfigurace-v-ror-aplikaci2015-03-05T09:48:36.015000Z2012-01-23T18:22:00ZTomáš Pavelka<div>Obvykle při vývoji aplikace časem dojdete k tomu, že potřebujete nastavit nějaké hodnoty, které použijete kdekoliv v aplikaci, např. storage pro upload souborů (local pro development a třeba Amazon S3 pro production) nebo cokoliv jiného co vás napadne.</div>
<div>Samozřejmě existuje spousta gemů (třeba <a href="https://github.com/binarylogic/settingslogic">Settingslogic</a> , jak už bývá v Rails zvykem, kde si vytvoříte strukturu vaší konfigurace třeba v Yaml souboru apod. Mně se zalíbil jednoduchý způsob, který publikoval Mike Perham na blogu Carbon Five v článku <a href="http://blog.carbonfive.com/2011/11/23/configuration-for-rails-the-right-way/">Configuration for Rails, the Right Way</a>.<br/></div>
<div>Využívá stávající Rails konfigurační soubory config/application.rb aconfig/environments/*.rb a přidává vlastní kofiguraci k již fungující Rails.<br/></div>
<div>Nastavení <i>config.files_storage = :file</i> pak můžete v aplikaci použít přes <i>AppName::Application.config.files_storage</i>.<br/></div>Formuláře v Ruby on Rails snadno a rychlehttps://tomaspavelka.postach.io/post/formulare-v-ruby-on-rails-snadno-a-rychle2015-03-05T09:48:36.361000Z2012-01-22T18:18:00ZTomáš PavelkaI když práce s formuláři je už tak celkem rychlá a pohodlná, doporučuji použít gem simple_form, který má několik dalších výhod, které oceníte:
<div>
<ul>
<li>generuje HTML5 markup<br/></li>
<li>HTML atribut type u inputu je automaticky nastavan podle datového typu atributu objektu (email, text, file, password)<br/></li>
<li>validační hlášky jsou zobrazovány inline u konkrétních políček s chybou<br/></li>
<li>je možné jej komplexně konfigurovat<br/></li>
<li>podpora I18n<br/></li>
</ul>
<div><b>Ukázka použití</b></div>
</div>
<div><script src="https://gist.github.com/tomaspavelka/113af9bc24ae2b740e56.js"></script><b><br/></b></div>
<div><b>Tip na závěr</b></div>
<div>Pokud stejně jako já, budete chtít změnit pořadí generovaných prvků pro každý formulářový řádek, tak aby třeba validační hláška byla hned za inputem. V konfiguračním souboru config/simple_form.rb nastavte:</div>
<div><i>config.components = [ :placeholder, :label_input, :error, :hint ]</i></div>Klikatelné odkazy v plain textuhttps://tomaspavelka.postach.io/post/klikatelne-odkazy-v-plain-textu2015-03-05T09:48:36.534000Z2011-11-29T18:14:00ZTomáš PavelkaMetoda <b>auto_link</b> slouží k převedení odkazů a e-mailových adres z plaintextu na klikatelné odkazy. Velmi užitečné např. pro výpis komentářů nebo jiných vstupních dat od uživatelů, když nechcete povolit WYSIWYG editor.
<div>Options a příklady použití najdete na APIdock - <a href="http://apidock.com/rails/ActionView/Helpers/TextHelper/auto_link">http://apidock.com/rails/ActionView/Helpers/TextHelper/auto_link</a></div>
<div>Update: v Rails 3.1 metoda odstraněna.</div>Plaveme ve floatechhttps://tomaspavelka.postach.io/post/plaveme-ve-floatech2015-03-05T09:48:36.583000Z2011-11-27T17:59:00ZTomáš Pavelka<span><a href="https://cdn-images.postach.io/cfc96a20ce8c1821863a9183f32cdb0a/6c07ba867498f0f87761d5043e7e34e1/w600_d5e9caa4f641f5ce3cc34fc71fdce8cd.jpg"><img src="https://cdn-images.postach.io/cfc96a20ce8c1821863a9183f32cdb0a/6c07ba867498f0f87761d5043e7e34e1/w600_d5e9caa4f641f5ce3cc34fc71fdce8cd.jpg" /></a></span>
<div><span><br/></span></div>
<div>Zrušení tabulkového designu přineslo mnoho bezesných nocí všem začínajícím kodérům a webovým vývojářům, co se většinu času hrabou v backendu, ale občas jsou nuceni nakódovat i nějaké to UI. A opravdovou noční můrou bude především "floutování" nebo-li různé čáry a kouzla s pozicováním, obtékáním a celkově s layoutem stránky.
<div>Napozicovat nejaký DIV přes float: left; obvykle není problém. Ta težší část je obvykle v "clearování floatování", např. přes clear: left; nebo jiné pokročilejší řešení. Často se setkávám s použítím následujícího (nebo podobného) řešení</div>
<div><script src="https://gist.github.com/tomaspavelka/6cac95a5a4933db0ce2b.js"></script></div>
</div>
<div>Třídu clearfix obvykle nastavíme obalovému prvku, takže obalový prvek bude mít stejnou výšku jako prvek vnitřní floatovaný a to je to co obvykle potřebujeme.
<div>Článek na <a href="http://www.cssnewbie.com/css-float-property/">CSSNewbie</a> se touto problematikou zaobírá a nakonec uvádí velmi pěkné a jednoduché řešení, bez použití nějakého clearfixu. Stačí i obalový prvek, který obaluje floatovaný prvek, "zafloatovat" a již i výška obalu odpovídá výšce vnitřního floatovaného prvku.</div>
<div>Samozřejmě, že pro mnoho z vás zkušených kodéŕů je to jistě samozřejmost. Ale věřím, že se najde někdo komu se to bude hodit.</div>
</div>Zkusím. Padne to nebo ne?https://tomaspavelka.postach.io/post/zkusim-padne-to-nebo-ne2015-03-05T09:48:36.647000Z2011-11-18T17:42:00ZTomáš PavelkaNedávno jsem narazil na pěknou věcičku, která řeší následný nepěkný kód:
<div><i>@person ? @person.name : nil</i><br/></div>
<div>Řešením je dle <a href="http://web.elctech.com/2009/11/12/if-in-doubt-try-try-again/">http://web.elctech.com/2009/11/12/if-in-doubt-try-try-again/</a> </div>
<div><i>@person.try(:name)</i></div>
<div>Samozřejmě, že v API najdete případně více informací. Velmi elegantní že?</div>