diff options
Diffstat (limited to 'vendor/plugins/globalize2/README.textile')
-rw-r--r-- | vendor/plugins/globalize2/README.textile | 86 |
1 files changed, 86 insertions, 0 deletions
diff --git a/vendor/plugins/globalize2/README.textile b/vendor/plugins/globalize2/README.textile new file mode 100644 index 000000000..e47e9bf37 --- /dev/null +++ b/vendor/plugins/globalize2/README.textile @@ -0,0 +1,86 @@ +h1. Globalize2 + +Globalize2 is the successor of Globalize for Rails. + +It is compatible with and builds on the new "I18n api in Ruby on Rails":http://guides.rubyonrails.org/i18n.html. and adds model translations to ActiveRecord. + +Globalize2 is much more lightweight and compatible than its predecessor was. Model translations in Globalize2 use default ActiveRecord features and do not limit any ActiveRecord functionality any more. + +h2. Requirements + +ActiveRecord +I18n + +(or Rails > 2.2) + +h2. Installation + +To install Globalize2 with its default setup just use: + +<pre><code> +script/plugin install git://github.com/joshmh/globalize2.git +</code></pre> + +h2. Model translations + +Model translations allow you to translate your models' attribute values. E.g. + +<pre><code> +class Post < ActiveRecord::Base + translates :title, :text +end +</code></pre> + +Allows you to values for the attributes :title and :text per locale: + +<pre><code> +I18n.locale = :en +post.title # => Globalize2 rocks! + +I18n.locale = :he +post.title # => גלובאלייז2 שולט! +</code></pre> + +In order to make this work, you'll need to add the appropriate translation tables. Globalize2 comes with a handy helper method to help you do this. It's called @create_translation_table!@. Here's an example: + +<pre><code> +class CreatePosts < ActiveRecord::Migration + def self.up + create_table :posts do |t| + t.timestamps + end + Post.create_translation_table! :title => :string, :text => :text + end + def self.down + drop_table :posts + Post.drop_translation_table! + end +end +</code></pre> + +Note that the ActiveRecord model @Post@ must already exist and have a @translates@ directive listing the translated fields. + +h2. Migration from Globalize + +See this script by Tomasz Stachewicz: http://gist.github.com/120867 + +h2. Changes since Globalize2 v0.1.0 + +* The association globalize_translations has been renamed to translations. + +h2. Alternative Solutions + +* "Veger's fork":http://github.com/veger/globalize2 - uses default AR schema for the default locale, delegates to the translations table for other locales only +* "TranslatableColumns":http://github.com/iain/translatable_columns - have multiple languages of the same attribute in a model (Iain Hecker) +* "localized_record":http://github.com/glennpow/localized_record - allows records to have localized attributes without any modifications to the database (Glenn Powell) +* "model_translations":http://github.com/janne/model_translations - Minimal implementation of Globalize2 style model translations (Jan Andersson) + +h2. Related solutions + +* "globalize2_versioning":http://github.com/joshmh/globalize2_versioning - acts_as_versioned style versioning for Globalize2 (Joshua Harvey) +* "i18n_multi_locales_validations":http://github.com/ZenCocoon/i18n_multi_locales_validations - multi-locales attributes validations to validates attributes from Globalize2 translations models (Sébastien Grosjean) +* "Globalize2 Demo App":http://github.com/svenfuchs/globalize2-demo - demo application for Globalize2 (Sven Fuchs)</li> +* "migrate_from_globalize1":http://gist.github.com/120867 - migrate model translations from Globalize1 to Globalize2 (Tomasz Stachewicz)</li> +* "easy_globalize2_accessors":http://github.com/astropanic/easy_globalize2_accessors - easily access (read and write) globalize2-translated fields (astropanic, Tomasz Stachewicz)</li> +* "globalize2-easy-translate":http://github.com/bsamman/globalize2-easy-translate - adds methods to easily access or set translated attributes to your model (bsamman)</li> +* "batch_translations":http://github.com/alvarezrilla/batch_translations - allow saving multiple Globalize2 translations in the same request (Jose Alvarez Rilla)</li> |