/ / Django ModelForm avec multilingue - django

Django ModelForm avec multilingue - django

J'ai défini le modèle comme ci-dessous

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 )

J'ai créer ModelForm pour "User" et accrochéavec une forme qui fonctionne parfaitement. Conformément à mon code ci-dessus, je reçois toujours "user_type_name_en" dans ma liste déroulante (mappage de clé étrangère). Je souhaite modifier dynamiquement le champ en fonction de l'option de langue. Comment faire?

Réponses:

0 pour la réponse № 1

Si vous utilisez Django pour rendre votre site multilingue: https://docs.djangoproject.com/en/dev/topics/i18n/

Vous pouvez faire quelque chose comme:

from django.conf import settings

...

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