Plugin rozširuje štandardnú triedu String o metódu fancy. S ňou možno pohodlne prevádzať reťazce typu “ako zväčšiť pamäť” na “ako-zvecsit-pamat”. Využití je niekoľko, napríklad tzv. SEO url.
"ako zväčšiť pamäť".fancy # => "ako-zvacsit-pamat"
Github, ako úložisko open source používam už nejaký ten rok. Čerpám odtiaľ plno Ruby on Rails pluginov, nikdy som tam však neprispel vlastným kúskom kódu. Až doteraz, dokým som si trochu nenaštudoval ako sa píšu pluginy do RoR. Tu je výsledok môjho malého snaženia.
Ukážka použitia
Plugin sa volá fancy_string a jeho použitie je veľmi jednoduché. Stačí na reťacez, napríklad “moj reťacez” zavolať metódu fancy.
"moj reťacez".fancy # => "moj-retazec"
Download a inštalácia pluginu
Plugin je umiestnený na službe GitHub: http://github.com/kelso/fancy_string. Ištaláciu do existujúceho RoR projektu spravíme takto (predpokladom je nainštalovaný balíček git-core):
cd vendor/plugins git clone git://github.com/kelso/fancy_string.git
Reálna ukážka – použitie SEO Url
SEO URL je užitočné kvôli vyhľadávačom. Kľúčové slová, napríklad z názvu vášho článku, sú obsiahnuté priamo v adrese – a teda google ich nájde ešte lepšie.
Predstavme si, že máme articles kontrolér a v ňom metódu show, ktorá načítava článok:
def show @article = Article.find(params[:id]) end
1. krok: do routes.rb zadefinujeme novú routu:
map.article 'clanok/:id/*fancy', :controller => 'article', :action => 'show'
2. krok: Použijeme helper link_to a to nasledujúcim spôsobom:
<%= link_to @article.title, article_path(@article, @article.title.fancy) # => <a href="/clanok/1/my-first-article">My first article</a>
Tak, a SEO URL je hotové