I would advise to implement your own solution. A polymorphically joined Translation model would be a good option. The translation model is related to a language model and polymorphically to one or more models (if you only need to link it to one model, you don’t need a polymorphic join).
has_many :translations, :as => :translatable
self.translations.find_by_language_id(language.id) || self.translations.first # Assuming you’re using Rails 2.1, otherwise find(:first)
belongs_to :translatable, :polymorphic => true
belongs_to :language # or just use a field to identify the language if you want them to match the simple_localization plugin ones
have a field “value” in the table
This is just an untested draft of how you could do it, you’ll have to work out the setters and getters a bit better.
This will give you the flexibility of allowing extra languages to be added at any time (if you use language columns in your tables, you’re pretty much limited to the languages you make fields for). Whatever solution you work out, you’re going to hit the database a lot more and with heavier requests (since you’ll need to access joined table records).
Peter De Berdt