Wouldn't it be a cleaner approach to seperate language dependent
content completely from the actual models. It's more "DRY" because you
only define the text fields on one place. You could even introduce a
site-wide model for all language dependent content like this:
class Content(meta.Model):
model_id = foreignkey to the name of the model it relates to
object_id = foreignkey to specific object it relates to
language_id = foreignkey to the language
name = name of the attribute
value = the content
Another solution would be to create a translation model for every model
that needs it. The translation model would look like:
class ThingContent(meta.Model):
object_id = foreignkey to specific object it relates to
language_id = foreignkey to the language
title = title content
description = description content
I do agree with Hugo that such a thing should be integrated into the
user interface and to add special permissions for translators.