Sha256: dd2bd403de1c5755a886fd36a3a302d896ee1382aa849e848ca42d55cd3ad755
Contents?: true
Size: 1.86 KB
Versions: 1
Compression:
Stored size: 1.86 KB
Contents
h1. I18n::Backend::ActiveRecord This repository contains the I18n ActiveRecord backend and support code that has been extracted from the "I18n":http://github.com/svenfuchs/i18n. h2. Installation For Bundler put the following in your Gemfile: <pre> gem 'i18n-active_record', :git => 'git://github.com/svenfuchs/i18n-active_record.git', :require => 'i18n/active_record' </pre> Next create a active record model named @Translation@ with the Rails Generator. Your migration should look like this: <pre> class CreateTranslations < ActiveRecord::Migration def self.up create_table :translations do |t| t.string :locale t.string :key t.text :value t.text :interpolations t.boolean :is_proc, :default => false t.timestamps end end def self.down drop_table :translations end end </pre> With this translation model you will be able to manage your translation, and add new translations or languages through it. To load @I18n::Backend::ActiveRecord@ into your Rails application, create a new file in *config/initializers* named *locale.rb*. A simple configuration for your locale.rb could look like this: <pre> I18n.backend = I18n::Backend::Database.new </pre> A more adavanced example (Thanks Moritz), which uses YAML files and ActiveRecord for lookups: <pre> I18n.backend = I18n::Backend::ActiveRecord.new I18n::Backend::ActiveRecord.send(:include, I18n::Backend::Memoize) I18n::Backend::ActiveRecord.send(:include, I18n::Backend::Flatten) I18n::Backend::Simple.send(:include, I18n::Backend::Memoize) I18n::Backend::Simple.send(:include, I18n::Backend::Pluralization) I18n.backend = I18n::Backend::Chain.new(I18n::Backend::Simple.new, I18n.backend) </pre> h2. Usage You can now use @I18n.t('Your String')@ to lookup translations in the database. h2. Maintainers * Sven Fuchs
Version data entries
1 entries across 1 versions & 1 rubygems
Version | Path |
---|---|
i18n-active_record-0.0.2 | README.textile |