5

Nel mio design ci sono alcuni modelli in cui ho bisogno di memorizzare determinati campi in diverse lingue. È già stato fatto prima? Ho visto alcuni moduli Django che aiutano a fare traduzioni di modelli, ma alcuni di essi non hanno funzionato correttamente.Django model i18n del contenuto

Qualsiasi pratica migliore in circolazione? Di seguito è il mio codice.

Il mio modello,

class Lookup_I18n(models.Model): 
    i18n_code = models.CharField(max_length=5, default=settings.LANGUAGE_CODE) 
    value = models.CharField(max_length=300) 

class Lookup(models.Model): 

    purpose = models.CharField(max_length=10) 
    key = models.CharField(max_length=10) 
    value_i18n = models.ForeignKey(Lookup_I18n) 
    value = models.Field() 

    class Meta: 
     unique_together = (('purpose', 'key'),) 

risposta

5

ho usato di recente django_modeltranslation. Creerà campi aggiuntivi in ​​ogni tabella per la traduzione di un campo in una determinata lingua. Puoi fornire la traduzione tramite il pannello di amministrazione di Django. Qui ci sono some applications per Django che traducono i modelli. Ho dovuto tradurre solo un campo nel modello e ha funzionato. Scegli l'applicazione che si adatta meglio al tuo design.