Unicode'as Ruby on Rails programose

Posted by Saulius Grigaitis Sun, 22 Apr 2007 19:04:00 GMT

Sveiki. Ramus sekmadienio vakaras. Ryt vėl įsuks į darbų verpetą, tad puikus metas apšilti ir parašyti pirmą techninį šio blogo straipsnį. Šiuo metu vystome projektą, kuriame daugiakalbystė vaidina ne paskutinį vaidmenį, tad draugausime su Unicode'u. Prireiks Ruby on Rails 1.2 ar naujesnės versijos ir keturių žingsnių:
1. Susitvarkome savo redaktorius taip, kad būtų naudojama utf-8 koduotė(dažnas šiuolaikinis redaktorius tai jau padarė pats).
2. Užtikriname, kad kiekvieno view'so antraštėje nurodyta utf-8 koduotė:
 <head>
    <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />

  ...
  </head>
3.Nurodome adapteriui, kad naudotų utf-8 koduotę faile config/database.yml:
development:
  adapter: mysql
  database: sample
  username: root
  password:
  encoding: utf8
...
Naudojant PostgreSQL, "utf8" keičiame "unicode".
4.Na ir linksmiausia dalis - nurodome duomenų bazių valdymo sistemai(DBVS), kad ji naudoti utf-8. Kiekvienai DBVS tai atliekama skirtingai, parodysiu kaip tai padaryti MySQL DBVS. Susirandame my.cnf failą, paprastai jis guli /etc direktorijoje Unix tipo sistemose. Papildome "[mysqld]" sekciją dviem įrašais:
[mysqld]
character-set-server = utf8
default-collation= utf8_unicode_ci
...
Perkrauname. Viskas. Tolesniam programų globalizavimui rekomenduoju Globalize įskiepį, bet apie jį vėliau. Iki!

Tags , , ,  | no comments | no trackbacks