I am currently in the process of creating an app, on which the information will be accessed by people who speak different languages. The information will be highly unique, so using translation tools will not be good enough. All the information will need to be in different languages, and when the user logs in, the information is displayed according to his settings. Now, the application is based off Django and MySQL. I see that Django has a localization feature, but I don't quite understand it. Is it calling a translation mechanism or something? I don't get it.
Putting that aside, I was wondering what was the best approach to solve this issue. The number of different languages is unknown for now. So I don't think storing the exact translation of each column within one table is a good idea, even though it would save time when querying. (no inner joins etc).
1) Should I look into the Django localization feature? What is it exactly? [I don't really want to store the translations into files.]
2) What Database design is best for multilingual applications? I found those ones:
- http://www.codeproject.com/Articles/8084/Creating-multilingual-websites-Part-2
- Storing the translation of each information in the same table, with _language appended in the different columns.
- Schema for a multilanguage database
How people usually solve this issue? Thanks a lot!
EDIT: I am not looking especially for something that is THAT easy to use. Mostly for something that is performant and won't create a giant mess in my DB... is that possible?