There is some new stuff coming out in edge for this, but, in
production we are using the getText gem. It is great because it dumps
to industry standard .po files which we send off for translation.
You simply mark all strings like this: <%= _("Hello World")%> in your
views, or just _("Hello") in your code and running the updatepo task
will find them and dump them to file.
I've been doing multilingual sites for a long time and found this tool
to be one of the best. A lot of people like Globalize, but personally
I don't like the idea of storing everything in the database as you
then have to give your translators access to the db and they have to
learn a new tool. The translation company we use already use and know
We are at the point now where we can add a new language to our system
in just a couple of hours (new translations and a few new images).