/ / Django ModelForm con Multilingual - django

Django ModelForm con Multilingual - django

He definido el modelo como abajo.

class UserType(models.Model):

user_type_id        = models.AutoField(primary_key=True)
user_type_name_en   = models.CharField(max_length=15)
user_type_name_de   = models.CharField(max_length=15)
user_type_name_fr   = models.CharField(max_length=15)
status              = models.BooleanField()

def __unicode__(self):
return self.user_type_name_en

class Meta:
db_table = "usertype"

class User(models.Model):

user_id             = models.AutoField(primary_key=True)
email_id            = models.EmailField( blank=False, null=False)
user_type           = models.ForeignKey(UserType )

He creado ModelForm para "Usuario" y enganchadocon una forma que funciona perfecta. De acuerdo con el código anterior, siempre obtengo "user_type_name_en" en mi menú desplegable (asignación de clave externa). Quiero cambiar dinámicamente el campo basado en la opción de idioma. ¿Cómo hacerlo?

Respuestas

0 para la respuesta № 1

Si está utilizando la forma Django de hacer que su sitio sea multilingüe: https://docs.djangoproject.com/en/dev/topics/i18n/

Puedes hacer algo como:

from django.conf import settings

...

def __unicode__(self):
return getattr(self, "user_type_name_%s" % settings.LANGUAGE_CODE, self.user_type_name_en)