Skip to content
MongoDB backend implementation for I18n gem.
Ruby
Branch: master
Clone or download

Latest commit

Fetching latest commit…
Cannot retrieve the latest commit at this time.

Files

Permalink
Type Name Latest commit message Commit time
Failed to load latest commit information.
lib
spec
.gitignore
Gemfile
Gemfile.lock
LICENSE
README.rdoc
Rakefile
mongo-i18n.gemspec

README.rdoc

Mongo-I18n

MongoDB backend implementation for I18n gem.

Supports

  • Ruby 1.8.7 (Ruby 1.9+ untested but should work).

  • I18n 0.5.0

  • Rails 3.0.3

Installation

From command line:

gem install mongo-i18n

At rails' 3 gemfile:

gem 'mongo-i18n'

Usage with Rails 3

I recommend to start with Chain backend while mongodb collection is empty, and move to entirely mongodb-based backend when you populate your database with all I18n messages.

Begin with:

collection = Mongo::Connection.new['my_app_related_db'].collection('i18n')
I18n.backend = I18n::Backend::Chain.new(I18n::Backend::KeyValue.new(MongoI18n::Store.new(collection)), I18n.backend)

And finish with:

collection = Mongo::Connection.new['my_app_related_db'].collection('i18n')
I18n.backend = I18n::Backend::KeyValue.new(MongoI18n::Store.new(collection)

If you are already using a mongodb ORM in your project (and I suppose you are, why else would you be reading this article? :), I recommend using the existing database connection:

collection = MongoMapper.database.collection('i18n')
I18n.backend = I18n::Backend::KeyValue.new(MongoI18n::Store.new(collection))

License

Mongo-I18n is licensed under Apache license. See LICENSE for details.

You can’t perform that action at this time.