HTML

Ruby on Rails

Könnyű Ruby on Rails programozási útmutatók

Friss topikok

Hogyan töltsünk be i18n locale fájlokat rails3-ban új gem-ből

2010.10.26. 16:03 :: Semper Augustus

Ez nagyon egyszerű. Ha csinálunk egy új gem-et saját locale fájlokkal, elsőkörben a lokális fájlokat kell létrehoznunk a gem lib/locales könyvtárban (en.yml és hu.yml). Ezután az .rb fájlunkban, aminek a lib könyvtárban kell lennie, csinálunk egy új methódust: translate_string.

class Example
require 'rubygems'
require 'active_support'
require 'i18n'

def initialize
  path=File.dirname(__FILE__)
  I18n.load_path += Dir[ File.join(path, 'locales', '*.{rb,yml}') ]
end

def translate_string(var)
  return I18n.t(var, :scope=>[:example, :vars])
end

end

Ezután szerkesszük meg a locale fájlokat, en.yml:

en:
  example:
    vars:
      title: example

És a hu.yml:

hu:
  example:
    vars:
      title: példa

Vigyázzunk, hogy space-eket használjunk tabok helyett. Ezután építsük fel a gem-ünket, majd tegyük be a Gemfile-ba, ami rails3 alkalmazás könyvtárában van. Ne felejtsük el újraindítani az alkalmazásunkat. Ezután már meg tudjuk hívni az új osztályunkat a controllerünkből:

e=Example.new
e.translate_string("title")

Ez pedig ezt adja vissza: "példa". Ennyi az egész!

További angol nyelvű információ az I18n fájlokról és bállításokról: I18n yml files in Rails3

 

Az eredeti cikk angol verziója megtalálható: ruby-on-rails-tutorials.blogspot.com/2010/10/how-to-load-i18n-locale-files-in-rails3.html

Szólj hozzá!

Címkék: tutorial ruby on rails útmutató how how to osztály ruby guide class create gem rails3 i18n

A bejegyzés trackback címe:

https://ruby-on-rails.blog.hu/api/trackback/id/tr572400679

Kommentek:

A hozzászólások a vonatkozó jogszabályok  értelmében felhasználói tartalomnak minősülnek, értük a szolgáltatás technikai  üzemeltetője semmilyen felelősséget nem vállal, azokat nem ellenőrzi. Kifogás esetén forduljon a blog szerkesztőjéhez. Részletek a  Felhasználási feltételekben és az adatvédelmi tájékoztatóban.

Nincsenek hozzászólások.
süti beállítások módosítása